> We are currently using MySQL for our database driven website. Currently, > we have about 100,000 users. In January, we will be getting 2 million > new registered users on our website.
Yes, but how many hits are you expecting, and what sort of queries will be ran? > We're buying a $50,000 Sun box to run the database server on. We're > deciding whether we should switch to Oracle. Can MySQL handle this kind > of load? The president (who doesn't know much about databases) was > thinking about buying Oracle, but from what I've heard, Oracle is > actually slower than MySQL since it needs to check FOREIGN KEYs, > TRIGGERs, ASSERTIONs, etc. AFAIK Oracle is slower, even if you don't use foreign keys, triggers, etc. > Can someone provide some advice? Thanks. My main concern is whether that > massive scale (2 million registered users, along with all the data and > CPU load they generate) is supported by MySQL. You may find that the problem is not in the database - it may be that your hardware will be insufficient. With this sort of load, and a 50K budged for hardware, you may be better off getting a bunch of cheap intel/amd based servers (say, 10-20 of them with that sort of budget) and setting up replication for a server farm. You could also gain reliability in this way. With a lot of simultaneous read-write database access, you may also want to consider PostgreSQL (something about row-level instead of table level locking on inserts). It's replication, however, doesn't appear to be as mature as that of MySQL, and if your queries are likely to be mostly SELECTs, then MySQL is probably the way forward. You may also want to take a look at the benchmark comparison charts between MySQL and PostgreSQL, Oracle, and other databases. Having said that, what server do you have at the moment? And what is the server load like? If you are expecting a 20 fold increase in users, and a linear increase in server load, you can work out roughly what sort of hardware you will need. Another thing you may want to look at is the "What we used MySQL for" section in the MySQL manual for an indication of what MySQL can deal with. Regards. Gordan --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php