Software Outsourcing, Offshore Software Development, Offshore Outsourcing Services, IT Outsourcing, Offshore Development
MySQL manual Offshore Software Outsourcing and Programming, IT Outsourcing Offshore Software Development  
Call Us Today: 1-800-678-9001
Offshore Software Outsourcing and Programming, IT Outsourcing Offshore Software Development

Home / Technical Support / MySQL

Key Offerings:

B2B and B2C E-Business Solutions

Offshore Software Development Outsourcing

Strategic Consulting

Offshore Software Outsourcing

About ALTOROS: ALTOROS Systems is headquartered in Tampa, Florida and maintains an office near Boston, Massachusetts and technology development center in Belarus and Russia. ALTOROS specializes on providing value-added e-commerce and web-based software development and offshore software outsourcing services to emerging enterprises helping them successfully plan and implement business initiatives.

Contact Us for more information.

Node: Which OS, Next: Which version, Prev: Getting MySQL, Up: General Installation Issues
Operating Systems Supported by MySQL
 
We use GNU Autoconf, so it is possible to port MySQL to all modern systems with working Posix threads and a C++ compiler.  (To compile only the client code, a C++ compiler is required but not threads.)  We use and develop the software ourselves primarily on Sun Solaris (Versions 2.5 - 2.7) and SuSE Linux Version 7.x.
 
Note that for many operating systems, the native thread support works only in the latest versions. MySQL has been reported to compile successfully on the following operating system/thread package combinations:
 
      ·      AIX 4.x with native threads.  See IBM-AIX.
 
      ·      Amiga.
 
      ·      BSDI 2.x with the MIT-pthreads package.  See BSDI.
 
      ·      BSDI 3.0, 3.1 and 4.x with native threads.  See BSDI.
 
      ·      DEC Unix 4.x with native threads.  See Alpha-DEC-UNIX.
 
      ·      FreeBSD 2.x with the MIT-pthreads package.  See FreeBSD.
 
      ·      FreeBSD 3.x and 4.x with native threads.  See FreeBSD.
 
      ·      HP-UX 10.20 with the DCE threads or the MIT-pthreads package.  See HP-UX 10.20.
 
      ·      HP-UX 11.x with the native threads.  See HP-UX 11.x.
 
      ·      Linux 2.0+ with LinuxThreads 0.7.1+ or glibc 2.0.7+.  See Linux.
 
      ·      Mac OS X Server.  See Mac OS X.
 
      ·      NetBSD 1.3/1.4 Intel and NetBSD 1.3 Alpha (Requires GNU make).  See NetBSD.
 
      ·      OpenBSD > 2.5 with native threads. OpenBSD < 2.5 with the MIT-pthreads package.  See OpenBSD.
 
      ·      OS/2 Warp 3, FixPack 29 and OS/2 Warp 4, FixPack 4.  See OS/2.
 
      ·      SGI Irix 6.x with native threads.  See SGI-Irix.
 
      ·      Solaris 2.5 and above with native threads on SPARC and x86.  See Solaris.
 
      ·      SunOS 4.x with the MIT-pthreads package.  See Solaris.
 
      ·      Caldera (SCO) OpenServer with a recent port of the FSU Pthreads package.  See Caldera.
 
      ·      Caldera (SCO) UnixWare 7.0.1.  See Caldera Unixware.
 
      ·      Tru64 Unix
 
      ·      Windows 9x, Me, NT, 2000 and XP.  See Windows.
 
Note that not all platforms are suited equally well for running MySQL. How well a certain platform is suited for a high-load mission-critical MySQL server is determined by the following factors:
 
      ·      General stability of the thread library. A platform may have excellent reputation otherwise, but if the thread library is unstable in the code that is called by MySQL, even if everything else is perfect, MySQL will be only as stable as the thread library.
 
      ·      The ability of the kernel and/or thread library to take advantage of SMP on multi-processor systems. In other words, when a process creates a thread, it should be possible for that thread to run on a different CPU than the original process.
 
      ·      The ability of the kernel and/or the thread library to run many threads which acquire/release a mutex over a short critical region frequently without excessive context switches. In other words, if the implementation of pthread_mutex_lock() is too anxious to yield CPU time, this will hurt MySQL tremendously. If this issue is not taken care of, adding extra CPUs will actually make MySQL slower.
 
      ·      General filesystem stability/performance.
 
      ·      Ability of the filesystem to deal with large files at all and deal with them efficiently, if your tables are big.
 
      ·      Our level of expertise here at MySQL AB with the platform. If we know a platform well, we introduce platform-specific optimisations/fixes enabled at compile time. We can also provide advice on configuring your system optimally for MySQL.
 
      ·      The amount of testing of similar configurations we have done internally.
 
      ·      The number of users that have successfully run MySQL on that platform in similar configurations. If this number is high, the chances of hitting some platform-specific surprises are much smaller.
 
Based on the preceding criteria, the best platforms for running MySQL at this point are x86 with SuSE Linux 7.1, 2.4 kernel, and ReiserFS (or any similar Linux distribution) and SPARC with Solaris 2.7 or 2.8. FreeBSD comes third, but we really hope it will join the top club once the thread library is improved. We also hope that at some point we will be able to include all other platforms on which MySQL compiles, runs okay, but not quite with the same level of stability and performance, into the top category. This will require some effort on our part in cooperation with the developers of the OS/library components MySQL depends upon. If you are interested in making one of those components better, are in a position to influence their development, and need more detailed instructions on what MySQL needs to run better, send an e-mail to <internals@lists.mysql.com>.
 
Please note that the preceding comparison is not to say that one OS is better or worse than the other in general. We are talking about choosing a particular OS for a dedicated purposerunning MySQL, and compare platforms in that regard only. With this in mind, the result of this comparison would be different if we included more issues into it. And in some cases, the reason one OS is better than the other could simply be that we have put forth more effort into testing on and optimising for that particular platform.  We are just stating our observations to help you decide on which platform to use MySQL on in your setup.
 
Offshore Software Outsourcing company Russia Florida Massachusetts Boston Belarus, Offshore Software Development Services, Offshore Programming and IT OutsourcingOffshore Development, Programming  Services, Tampa FL Russia, E-commerce, Database, CRM, Financial Insurance Health Care Real EstateOffshore Software Development Services, Software Outsourcing Russia
HOME PAGE, Offshore Software Outsourcing Company, offshore IT outsourcing services, offshore 
software development Russia Massachusetts Florida New York CT VT RI software development