
#!/bin/bash
mysql
2 行目以降のスクリプトの残りは、MySQL を終了した後に実行されることがわかります。mysql 内で使用するコマンドを追加することは可能でしょうか? たとえば、スクリプトで MySQL を実行し、「show tables;」コマンドを発行したいのですが、それは可能でしょうか?
答え1
の場合mysql
、コマンドラインオプションを使用してコマンドを引数として渡す-e
か、ヒアドキュメントなどを使用して標準入力経由で渡すことができます。つまり、
mysql -u dbUser -pdbPass -e 'use mydb; show tables;'
または
mysql -u dbUser -pdbPass << EOF
use mydb;
show tables;
EOF
(ここでdbUser
、、dbPass
はmydb
適宜置き換えられます)。