Quiz - MySQL settings

Re: Quiz - MySQL settings

by Visvanath Ratnaweera -
Number of replies: 4
Picture of Particularly helpful Moodlers Picture of Translators
Hi Vyshnavi

Support for Ubuntu 8.04 ended in April 2010 http://en.wikipedia.org/wiki/Ubuntu_8.10_Intrepid_Ibex#Ubuntu_8.10_.28Intrepid_Ibex.29. Consider 10.04 LTS - support for the Server version until April 2015. On a standard desktop PC like yours the "dist-upgrade" should work. As always, don't forget to backup data before starting the operation.

Keep 1.9 for now, but update it to 1.9 latest.

As repeatedly mentioned, a RAM upgrade is strongly recommended for 100 simultanous quizes (1 GB RAM per 50 concurrent users). You might even find 2x 2 GB in the used computer market. Assuming you run 32 bit Linux kernel, more than 4 GB won't help you right now.

P.S. @all, If you find a reply useful, rate it as such:
http://docs.moodle.org/en/Moodle.org_forums_Code_of_Conduct#Provide_feedback_for_others
In reply to Visvanath Ratnaweera

Re: Quiz - MySQL settings

by Vyshnavi Ashish -

Have rated the replies, thanks! We are getting a new server soon with the right processor and RAM.

Are there any settings I should configure in MySQL to handle 100 students logging in to a quiz at once?

In reply to Vyshnavi Ashish

Re: Quiz - MySQL settings

by Andrew Lyons -
Picture of Core developers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers Picture of Testers
Hi Vyshnavi,

If you've not ordered the server yet, the biggest thing you can do to improve the database server performance is to specify the right disk configuration. With databases, you typically want lots of very fast disks in a suitable RAID configuration. Avoid RAID 5 and RAID 6 for a database server. Personally I'd go for RAID 10 and have a minimum of four spindles, preferably more. If you can, investigate using SSDs - but don't buy consumer-grade disks as these typically fail earlier in a write-heavy environment.

Also, get a decent raid controller with a cache (512MB should be more than sufficient) and battery backup. This ensures that writes are buffered to memory (fast) before being written to disk.

I'm a postgres man myself, but read the MySQL performance tuning guides. A quick google usually bring something up. From what I recall, you need to play with the key_buffer_size or something like that.

Personally, I'd move to Postgres over MySQL any day for numerous reasons. Many people will say that MySQL is faster than Postgres, but by the time you're using InnoDB the jury is out. With postgres you can tune a lot more - for example to increase the amount of memory for complex joins and sub-selects.

Hope that this helps,

Andrew

p.s. Thanks for rating the previous replies - It's good to see people saying thank you in this way smile
Average of ratings: Useful (1)
In reply to Andrew Lyons

Re: Quiz - MySQL settings

by Vyshnavi Ashish -

Thank you for the reply, Andrew. That was very helpful. smile I shall be reading up on the MySQL performance tuning guidelines while we install.

In reply to Andrew Lyons

About the ratings

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
Sorry for the broken link in my previous post. I wanted to link to section "2.4 Provide feedback for others" in the http://docs.moodle.org/en/Moodle.org_forums_Code_of_Conduct, but it jumps to "# 3.4 Code of conduct violations"! I've already reported it in the "Documentation" forum http://moodle.org/mod/forum/discuss.php?d=195445&parent=852369.

Anyway, the same conten is available in the introduction to this forum (Hardware and Performance):

<quote>
In order to help the helpers and others that may encounter the same problem:

* rate the posts useful to you (a drop-down menu appears below each post once you are logged in). This is preferred over "thank you" and "+1" posts.

* once you could solve the problem, summarize solution by replying to the thread, providing links to the documentation, discussions or tracker issues that helped you. Tag that post by adding [Solved] to the subject line.
</quote>