title: MySQL structure for large number of fields
body: <p>I have a MySQL database where one table stores user information and another table stores something called as 'tags' for each user. The structure is something like this:</p>
  
  <p><strong>Table 1: user_info</strong></p>
  
  <pre><code>id | col1 | col2 | ....
  </code></pre>
  
  <p><strong>Table 2: tags</strong></p>
  
  <pre><code>id | user_id | tag
  </code></pre>
  
  <p>The approximate number of users would be around 25000, and practically speaking each user would have like 50 tags but theoretically the user can create infinite tags. Each user can only access the tags he/she created, so I paired it with user_id in Table 2. </p>
  
  <p>So my question is that is the structure I have a good structure, or is there a better way to do this? (Let me know if this is not the right place to ask, since this is not a direct code question.)</p>