title: Should I split the data between multiple databases or keep them in a single one?
body: <p>I'm creating a multi-user/company web application in PHP &amp; MySQL.  I'm interested to know what the best practice is with regards to structuring my database(s).</p>
  
  <p>There will be hundreds of companies and thousands of users of this web app so this needs to be robust.  Each company won't be able to see other companies data, just their own.  We will be storing mainly text data and will probably only be a few MB per company.</p>
  
  <p>Currently the database contains 14 tables (for one sample company).</p>
  
  <p>Is it better to put the data for all companies and their users in a single database and create a unique companyID for each one?</p>
  
  <p>or:</p>
  
  <p>Is it better to put each company's data in its own database and create a new database and table set for each new company that I add?</p>
  
  <p>What are the pluses and minuses to each approach?</p>
  
  <p>Thanks,</p>
  
  <p>Stephen</p>