Is it better to have say 4-5 websites accessing the same mySQL databse or would it be wiser to have a unique mysql databse for each of the 4-5 websites. Would there be more pressure on the server if there were more databses? OR would the single database have more problems if multiple sites were accessing it? Need some advice please
It would depend on the traffic of all the sites together. One DB should be fine though if the sites are not all huge and each are causing lots of hits to the DB.
Assuming that the database content for each of the sites is the same, I'd say go for the one database as long as the access paterns are similar. This way the MySQL server can optimize its caching and optimization for this particular data set, and you avoid having to keep multiple instances in sync.
The "load" is handled by the MySql server/service/threads It does not care how you split up your databases - it just assigns a thread to do the query. You can query the server (or use phpMyAdmin) and you will be able to tell the load/threads on your server and various other statistics. To reduce load on the server - optimize your database often and better optimize your query. Give me some green points if this helps you.
The issue here is more around security. If these are distinctly different websites then ideally you should have a database for each. With users and roles defined for each website on the database. however if you have 4 websites that are related to the same backend data then you can (probably need to) share the database.