システムレベルの要素は、その一部を初期段階に決定する必要があるため、この話から始めます。これに該当しない場合は、システムを大きく変えることが重要でないのであれば、このセクションは簡単に目を通せば十分です。ただし、このレベルで変更を行うことでどの程度改善できるのかを自覚しておくことは必ず役に立ちます。
使用するオペレーティングシステムは非常に重要です。複数 CPU のコンピュータを使用するなら、Solaris(スレッド実装機能が優れている)または Linux(2.2 カーネルの SMP サポートが優れている)が良いでしょう。 また、旧バージョンの Linux カーネルのデフォルトには 2G ファイルサイズの制限があります。このカーネルで 2G より大きいファイルがどうしても必要な場合は、ext2 ファイルシステムの LFS (Large File System)パッチを入手する必要があります。 これ以外の ReiserFS や XFS などには 2G の制限がありません。
多くのプラットフォーム上で、MySQL を本番稼働させていないため、可能であれば選択前に候補のプラットフォームのテストを実行することを推奨します。
その他のヒント:
RAM が十分にある場合は、スワップデバイスすべてを削除できる。オペレーティングシステムによっては、空きメモリがある場合でもスワップデバイスが使用されることがある。
            --skip-external-locking MySQL
            オプションを使用して、外部ロックを回避する。実行しているのが
            1 サーバだけである限り、これによる MySQL
            の機能に対する影響はない。myisamchk
            を実行する前にサーバの記録を取る(または対応するテーブルをロックし、フラッシュする)ことを忘れないようにする。一部のシステムは、外部ロックがまったく機能しないため、このオプションが必須になる。
          
            MySQL 4.0 以降、--skip-external-locking
            オプションはデフォルトでオンになっている。
            それ以前は、MIT-pthread
            によるコンパイル時にデフォルトでオンになっている。これは
            flock()
            がすべてのプラットフォームで MIT-pthread
            により完全にサポートされているわけではないことによる。Linux
            ファイルロックは安全ではないため、Linux
            でもデフォルトでオンになっている。
          
            --skip-external-locking
            を使用できない状況は、同一データに対して複数の
            MySQL
            サーバ(クライアントではない)を実行している場合と、サーバに対して初めにテーブルのフラッシュとロックを行う指示を出さずに、テーブルに対して
            myisamchk
            を実行する場合に限られる。
          
            --skip-external-locking
            を使用している場合でもLOCK
            TABLES/UNLOCK TABLES
            は使用できる。
          
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

