MYSQLのオプションファイル(設定ファイル)は複数存在する場合があります。
複数の設定ファイルが存在した場合、後ろで定義したオプションの方が前で定義した
同一オプションより優先されます。

コマンドラインオプションは全ての設定ファイルよりも優先されます。

Windows
Windows上のMySQL Serverは、以下の表にリストされている設定ファイルを、リストの上から順に読み込みます。
同じ設定が複数の設定ファイルに記述されている場合は、最後に読み込まれた設定が有効になります。
=====================================================
ファイル名 目的
=====================================================
WINDIR\my.ini グローバルオプション
C:\my.cnf グローバルオプション
INSTALLDIR\my.ini グローバルオプション
defaults-extra-file --defaults-extra-file=pathで指定されたファイル(あれば)

WINDIR ユーザのWindowsディレクトリの場所を表しています。一般的に、C:\WINDOWS もしくは C:\WINNTになります。以下のコマンドを使用して WINDIR 環境変数の値から正確なロケーションを割り出すことができます。

Unix or Linux
Unix系のプラットフォーム上のMySQL Serverは、以下の設定ファイルを表の上にリストされている順に読み込みます。
同じ設定が複数の設定ファイルに記述されている場合は、最後に読み込まれた設定が有効になります。
=====================================================
ファイル名 目的
=====================================================
/etc/my.cnf グローバルオプション
$MYSQL_HOME/my.cnf サーバ固有のオプション
defaults-extra-file --defaults-extra-file=pathで指定されたファイル(あれば)
~/.my.cnf ユーザ固有のオプション

MYSQL_HOMEはサーバ固有のファイルmy.cnfを含むディレクトリへのパスを含む環境変数です。
MYSQL_HOME がセットされていない状態で mysqld_safe プログラムを使ってサーバをスタートさせると、
mysqld_safe は次のように MYSQL_HOME をセットしようとします。

BASEDIR と DATADIR をそれぞれ、MySQLベースディレクトリとデータディレクトリのパスネームの代理に立てます。
DATADIRにはmy.cnfファイルが存在し、BASEDIRには存在しない場合、mysqld_safeはMYSQL_HOMEをDATADIRにセットします。
または、もしMYSQL_HOMEがセットされておらず、my.cnfファイルがDATADIRに存在しない場合、mysqld_safeはBASEDIRにMYSQL_HOMEをセットします。
MySQL 5.1ではDATADIRのmy.cnfファイルのロケーションとしての使用は認証されていません。BASEDIR の方が良い場所です。
一般的にDATADIRは/usr/local/mysql/dataでバイナリインストールに、または/usr/local/varでソースインストールに使用されます。

Comments are closed.

Post Navigation