AboutデジタルIT・インターネットデータベースMySQL、PostgreSQL、SQLiteMySQLのチューニングデータベース/MySQL、PostgreSQL、SQLiteMySQLのチューニングMySQLのチューニングについて解説します。美彦MySQLのチューニングMySQLはスケーラブルなアルゴリズムを使用し、通常の実行時のメモリ消費を小さくしていますが、メモリを多く割り当てると、パフォーマンスが向上します。サーバで使用されるデフォルトのバッファサイズは次のコマンドで確認できます。--help下記のように表示される変数の値を確認し、調整します。&のようにコマンドで指定するかmy.cnfファイルで指定します。バッファサイズ、長さ、およびスタックサイズの値はバイト単位です。値に付けると、それぞれキロバイト、メガバイトを示します。my.cnfには下記のように指定します。コマンドに接続する場合に使用しますpassword=my_password#[mysqldump]#[odbc]下記はMySQLサーバをチューニングする際に使用される変数のうちの主要なものです。■key_buffer検索に使われるインデックスをバッファに保存する際のメモリサイズです。メモリに余裕がある場合増やすとパフォーマンスが向上します。例)key_buffer=256M■table_cacheデータのキャッシュサイズです。値を大きくすることでディスクのI/Oが減りパフォーマンスが向上します。例)table_cache=256■max_allowed_packet入力データ保持のための最大バッファサイズです。画像など、大きなデータ挿入をおこなう際に増やします。例)max_allowed_packet=1M■sort_bufferソートをおこなう際に使用するバッファサイズです。BYをクエリーに用いた場合のパフォーマンスが向上します。例)sort_buffer=1M■record_buffer値を大きくすることでインデックスを含まないクエリーの実行速度が上がります。queriesにカウントされる場合のしきい値(単位は秒)を指定します。発行される場合はjoin_bufferを増やします。後から読まれたほうのファイルの設定で、前の設定は上書きされます。○Linuxの場合/etc/my.cnf↓DATADIR/my.cnf↓~/.my.cnfの順に上書きされます。○Windowsの場合windowsシステムディレクトリmy.ini↓C:my.cnf↓C:mysqldatamy.cnfの順に上書きされます。楽天市場でデータベース関連の書籍を見るAmazonでデータベース関連の書籍を見る※記事内容は執筆時点のものです。最新の内容をご確認ください。異なる可能性があります。About公式SNS日々の生活や仕事を楽しむための情報を毎日お届けします。