best linux distro for mysql dedicated server
i am installing a machine in production for a client of mine. they insist on a linux os with mysql.
can some one recommend which is the best linux distro for a mysql dedicated server machine
a link to some information about installing a mysql dedicated machine can also helps.
thanks
Performance wise most Linux choices will be similar. More important considerations are which version of mySQL you need (if something recent is required, some distros like Debian/Stable may be too far back and if something very recent is required then you'll need to hand-compile), long-term support for security updates, and your familiarity with that Linux flavour.
Off the top of my head my recommendation would be either Ubuntu/LTS Server (i.e. 10.04) or CentOS (the most recent major version) as they have official security patch support for longer in the future without needing to completely upgrade the OS, with Debian/Stable usually not being a bad choice either. I'd go with Ubuntu or Debian myself as I am more familiar with Debian style setups than RedHat ones.
What-ever you go for refrain from installing more than you need - i.e. don't bother with a desktop environment.
Once the base OS is installed, assuming the mySQL build offered in the standard repo is sufficient, running something like aptitude install mysql-server
(Debian/Ubuntu) or yum install mysql-server
is all you need to do to install (using the distro's default packages like this makes keeping up-to-date with security releases easier as you can just do something like aptitude update && aptitude safe-upgrade
(Debian/Ubuntu) rather than needing to rebuild the latest version from source or obtain and install binaries from elsewhere.
Once installed you will find the configuration files under /etc
. The content of these will be almost exactly the same as for Windows and significant differences tend to be well commented in the files themselves (at least in Debian's case, though I assume this is the same elsewhere as the bulk of the details probably come from the sample config files in the official mySQL documentation and/or source) - so if you are familiar with configuring mySQL on Windows this should offer you few (if any) surprises.
Edit: having time to familiarise yourself with the setup (as per your response to Bloodphlia's concern) is very much a good thing - I wish there were far less servers out there installed by people who did not have time to experiment and learn first! If you can find the time I suggest installing a couple of systems in virtual machines under vbox or similar. You can use these "throw-away" VMs to play and see which Linux variant you prefer and to test things out in an environment where you can experiment in detail without fear of upsetting a production machine.
For any Linux server machine, I'd recommend something Debian or Red Hat based. Both are very mature in production and also have very mature spinoffs. Slackware is also very mature, although I find it easier to find documentation for server-specific tasks for the other 2 distributions. What it usually boils down to for me is preference. Personally I am much more experienced with Red Hat based systems so that is the route I usually take, although I am very comfortable working with Debian as well.
Debian has a massive software repository, prompt security updates, and is free to use. CentOS is a spinoff of Red Hat Linux and also has lots of software available, frequent updates, and is free to use. The advantage with using Debian is that Ubuntu is based on it, and most articles you find that cover Ubuntu problems will also work in Debian.
The most important thing you're looking for is not just maturity, but stability--you don't want a lot of packages changing underneath your production server, potentially affecting customer services. Two popular ones are RHEL (costs a little), and CentOS (forked from RHEL, but free--also much more stable in terms of new packages).
Good luck, although make sure to heed @BloodPhilia's advice!
Andrew