Hello All,
I have been a MYSQL fan since many years, and used it in many of my applications, i think it is really good.
Now, i have a chance to select between database while making this new web application which is fairly large (of course mysql is my selected). but I have a few queries and would appreciate if any of you good guys can help me :-)
By fairly large application I mean:
1. More than 300-400 tables
2. About 200-250 concurrent connections
3. Some tables will have rows as low as 1 and high as 3-4 million, this will increase as time passes when application is used
I have following concerns, and would appreciate any guidance:
1. Due to the amount of data and many concurrent connections, I want to create another table that has history of all db transactions for every table. i.e. I want to keep history of any records changed. Any update/delete query fired within MYSQL should automatically be recorded in another table. So that if accidentally I record is deleted/updated which was not suppose to be. Then I can still get it. Or If I want to show log of changes for a particular row, I can query that table and get log of changes done.
2. Again due to fairly large amount of db (which is going to b used on web application) I wanted to find an effective way to do backup's or replicate while the db is live. I cannot afford to shut down mysql server to do backups.
Some simple questions which very well read users can reply.
1. How many concurrent connections are allowed in mysql?
2. How many max records can a table have?
3. Any tips to optimize mysql database?
Thanks in advance for reading so far :-)
Please share your ideas, views and knowledge on this.
Best Regards,
Sawan