[+/-]
MySQL プログラムのオプションを指定するには次の手段があります。
プログラム名に続くコマンドラインにオプションをリストアップします。これはプログラムを特別な形で立ち上げる際のオプションの中として最も代表的なものです。
オプションをプログラム起動時に読み込まれるオプション ファイルの中にリストアップします。これはプログラム起動の度、自動的に読み込まれるように設定する際に有効です。
オプションを環境変数にリストアップします。この方法はプログラム起動の際、その都度設定する場合に便利なオプションです。実際には、オプションファイルの使用理由の多くがこれに当てはまります。しかし、項4.12.2. 「Unix で複数サーバの実行」 では、環境変数が大変役立つ一例が取り上げられています。ここでは TCP/IP ポート番号と Unix ソケット ファイルをサーバとクライアント プログラム両用に指定するために便利な手法が述べられています。
MySQL はどのオプションが最初に与えられたかを環境変数内の調査、そしてオプションファイルの読み取り、コマンドラインのチェックといった作業を通して判断します。これはつまり、環境変数は優位性が最も低く、コマンドラインのオプションは優位性が最も高いということを意味しています。
オプションは規則正しく処理されるため、特定のオプションが複数回指定されると、最後のものが最優先されるようになっています。ここで取り上げる次のコマンドは、localhost
上のサーバに接続するための
mysqlを立ち上げます。
shell> mysql -h example.com -h localhost
相反する、または関連するオプションが与えられた場合、後で与えられたオプションが前のものよりも優先されます。次のコマンドは mysql を 「列名なし」 モードで立ち上げます。
shell> mysql --column-names --skip-column-names
オプションの指定は、完全な形、または不明瞭な点なく頭部が入力されることで行われます。例えば、--compress
オプションはmysqldumpに--compr
として与えられた場合は読み取られますが、不明瞭な形の--comp
として与えられた場合は作動しません。
shell> mysqldump --comp
mysqldump: ambiguous option '--comp' (compatible, compress)
オプション頭部の入力次第では、プログラムに新たなオプションが実行される手順で問題が生じることもあるという点に注意してください。現在は問題のなくても今後不明瞭とされることも考えられます。
MySQL はオプションファイル内でプログラムのオプションに初期設定値を指定することでオプションを処理していきます。従って、これを利用すれば、プログラムを立ち上げる際毎回手動で入力しなくてもよいだけでなく、必要に応じてはコマンドラインのオプションを使うことで初期設定を塗り替えることもできます。