We start with system-level factors, because some of these decisions must be made very early to achieve large performance gains. In other cases, a quick look at this section may suffice. However, it is always nice to have a sense of how much can be gained by changing things at this level.
The default operating system to use is very important! To get the best use of multiple-CPU machines, you should use Solaris (because its threads implementation works well) or Linux (because the 2.4 and later kernels have good SMP support). Note that older Linux kernels have a 2GB filesize limit by default. If you have such a kernel and a need for files larger than 2GB, you should get the Large File Support (LFS) patch for the ext2 filesystem. Other filesystems such as ReiserFS and XFS do not have this 2GB limitation.
Before using MySQL in production, we advise you to test it on your intended platform.
Other tips:
If you have enough RAM, you could remove all swap devices. Some operating systems use a swap device in some contexts even if you have free memory.
            Use the --skip-external-locking MySQL
            option to avoid external locking. This option is on by
            default in MySQL 5.0.
          
            Note that the --skip-external-locking
            option does not affect MySQL's functionality as long as you
            run only one server. Just remember to take down the server
            (or lock and flush the relevant tables) before you run
            myisamchk. On some systems this option is
            mandatory, because the external locking does not work in any
            case.
          
            The only case where you cannot use
            --skip-external-locking is if you run
            multiple MySQL servers (not clients) on
            the same data, or if you run myisamchk to
            check (not repair) a table without telling the server to
            flush and lock the tables first. Note that using multiple
            MySQL servers to access the same data concurrently is
            generally not recommended,
            except when using MySQL Cluster.
          
            You can still use LOCK TABLES and
            UNLOCK TABLES even if you are using
            --skip-external-locking.
          
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.

