2010年8月13日金曜日

[MySQL] コマンドラインプロンプトを変更する

MySQL のコマンドラインプロンプトは mysql> がデフォルトですが、実は変更・カスタマイズすることができます。

通常
$ mysql -h host database
mysql>

ユーザ、ホスト、データベース名を表示してみる
$ mysql -h host database --prompt="(\u@\h) [\d]> "
(user@host) [database]>

毎回コマンドオプションを指定するのが面倒な場合は、$HOME/.my.cnf を下記のようにすればOKです。
※オプションファイル上では、プロンプトオプションとエスケープシーケンスに重複があるようなので、\ は \\ としてエスケープするのが良いです。
[mysql]
prompt=(\\u@\\h) [\\d]>\\_

使用できるオプションは次の通り。

オプション説明
\vサーババージョン
\dデフォルトデータベース
\hサーバホスト
\p現TCP/IPポートかソケットファイル
\uユーザネーム
\Uフルのuser_name@host_nameアカウント名
\\リテラル‘\’バックスラッシュキャラクタ
\nニューラインキャラクタ
\tタブキャラクタ
\ スペース(バックスラッシュの後のスペース)
\_スペース
\R現時刻、軍隊表記(0-23)
\r現時刻、標準表記(1-12)
\m現時刻の分
\y現年、2桁
\Y現年、4桁
\D日付(フルで)
\s現時刻の秒
\w曜日名を頭3文字で(Mon, Tue, …)
\Pam/pm
\o月名を数字で
\O月明を頭3文字で(Jan, Feb, …)
\c発行されたステートメントごとに増加するカウンター
\l現デリミタ(5.1.12で新規追加)
\Sセミコロン
\'シングルクオート
\"ダブルクオート

詳しくは MySQL のドキュメントを。
http://dev.mysql.com/doc/refman/5.1/ja/mysql-commands.html

0 件のコメント: