title: MySQL application users vs database users
body: <p>Unfortunately this question may be a little broad, because I can't work out the proper terms to help me bring all this together. I'm very new to php/SQL, and I'm attempting to set up a minimal site with very simple login/register functionality.</p>
  
  <ul>
  <li>Should I be creating a new database user whenever I register a new web user?</li>
  <li>Are CRUD privileges safe to give to all users of the website?</li>
  </ul>
  
  <p>Should I actually make a DB user for registering, one which can only insert into the user table and nothing else until they login (requiring no password for <code>mysqli_connect()</code>)?</p>
  
  <p>Once logged in, they would make a connection to a different type of DB user, one with more privileges to use the website.</p>
  
  <ul>
  <li>How many different types of DB users should there be?</li>
  </ul>
  
  <p>I assume a small group of users for the DB workers (including one for root access), another group for each type of web user (ie. employers have more privileges than employees), and another restricted user just for registering.</p>
  
  <ul>
  <li>All in all, would >10 DB users in a small website be unusual?</li>
  <li>Is there a performance/space cost associated with having many types of users?</li>
  </ul>
  
  <p>I appreciate any responses and links, and apologize if these are very basic questions.</p>