MySQLクライアントを使いやすくしてみる

2010 年 1 月 9 日 | カテゴリー: LAMP奮闘記, MySQL, まぎれもなくただのメモ

MySQLのMLにて知ったのですが、素敵なハックだったので勝手にご紹介。

mysqlクライアントを利用してデータベースに接続すると、通常は以下のようになります。

$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 44
Server version: 5.1.37-1ubuntu5 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

気軽にrootでログインしてしまう事の是非は置きまして、このプロンプトの「mysql>」の表示が、my.cnfに設定を記述する事でカスタマイズ可能だそうです。

/etc/mysql/my.cnf(Fedoraなら/etc/my.cnf)内の[mysql]セクションに以下を追記します。

[mysql]
prompt=[\d]> \

これで、再度ログインしてみると以下のように「mysql」の代わりにDB名が表示されるようになります。

$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 46
Server version: 5.1.37-1ubuntu5 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

[(none)]> USE information_schema;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
[information_schema]>

これだとどのデータベースを操作中か一目瞭然なので、誤操作防止に役立ちそうですね。他にも色々と柔軟にカスタマイズ出来るようです^^

普段はphpMyAdminのSQLウインドウからSQLを発行する事が多いのですが、早速Ubuntu/Fedoraに設定してみようと思います。

  1. paz
    2010 年 1 月 9 日 15:06

    ちょうど自分もMySQLについてちょっと調べていたところでしたw
    自分は、「prompt=”\u@\h[\d]> “」で利用してます。

    ~/.my.cnfに記述することでも同様に表示を変更できたと思いますw
    LinuxユーザーとMySQLユーザーの関連性をちゃんと把握できていないので確かではなくてすみません><

  2. 2010 年 1 月 11 日 01:18

    @paz

    コンニチハ

    年明け早々のアドバイス有難うございます!!

    >~/.my.cnfに記述することでも同様に表示を変更できたと思いますw
    >LinuxユーザーとMySQLユーザーの関連性をちゃんと把握できていないので確かではなくてすみません><

    この辺りの関連性は興味深いですね。
    知識・技術共にまだまだだなぁ、と痛感する事しきりです><