Configure mariadb client prompt
基本的にDBに直接入ることは無いけど、せっかくなので(?)プロンプトをカスタマイズしてみる。デフォルト状態だとこんな感じ。
MariaDB [(none)]>
ライブで変更するにはPROMPT
コマンドを実行する。
MariaDB [(none)]> PROMPT \U [\d] \r:\m \P>\_
PROMPT set to '\U [\d] \r:\m \P>\_'
lorentzca@localhost [(none)] 10:21 pm>
PROMPT
単体で実行すると、初期状態に戻るので、試しながら気に入ったプロンプト探すのがよさ気。
lorentzca@localhost [(none)] 10:21 pm> PROMPT
Returning to default PROMPT of \N [\d]>
MariaDB [(none)]>
ハイパーもりもりプロンプト
MariaDB [(none)]> PROMPT \c \D \d \h \l \m \n \O \P \p \r \S \s \t \U \v \w \Y \_>\_
PROMPT set to '\c \D \d \h \l \m \n \O \P \p \r \S \s \t \U \v \w \Y \_>\_'
1 Wed Aug 24 22:30:10 2016 (none) localhost ; 30
Aug pm mysql.sock 10 ; 10 lorentzca@localhost 5.5.47-MariaDB Wed 2016 >
\U
や\_
などのシーケンスについては以下にまとまっている。
永続化する
気に入ったプロンプトが見つかったら、デフォルトでそのプロンプトが適用されるようにしてみる。centos7でyum install mariadb-server
した場合は設定ファイルは以下のようなツリーになっている。
/etc/my.cnf
/etc/my.cnf.d/
├── client.cnf
├── mysql-clients.cnf
└── server.cnf
clientの設定らしきものが2つ...。提供元パッケージが違うっぽい。
$ rpm -ql mariadb-server | grep '/etc/my.cnf.d'
/etc/my.cnf.d/server.cnf
$ rpm -ql mariadb | grep '/etc/my.cnf.d'
/etc/my.cnf.d/client.cnf
$ rpm -ql mariadb-libs | grep '/etc/my.cnf.d'
/etc/my.cnf.d
/etc/my.cnf.d/mysql-clients.cnf
どっち使えばいいんじゃろ。とりあえず中身見てみる。
client.cnf
#
# These two groups are read by the client library
# Use it for options that affect all clients, but not the server
#
[client]
# This group is not read by mysql client library,
# If you use the same .cnf file for MySQL and MariaDB,
# use it for MariaDB-only client options
[client-mariadb]
mysql-clients.cnf
#
# These groups are read by MariaDB command-line tools
# Use it for options that affect only one utility
#
[mysql]
[mysql_upgrade]
[mysqladmin]
[mysqlbinlog]
[mysqlcheck]
[mysqldump]
[mysqlimport]
[mysqlshow]
[mysqlslap]
どっちでもいいっぽい。[client]
もしくは[client-mariadb]
に設定すれば良さそう。
せっかくmariadbなので[client-mariadb]
に設定してみる。
[client-mariadb]
prompt='\\U [\\d] \\r:\\m \\P>\\_'
mariadbに入ってみる。
$ mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 219742
Server version: 5.5.47-MariaDB MariaDB Server
Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
lorentzca@localhost [(none)] 10:58 pm>
やったね!