shellで使えそうなMySQL コマンドメモ
もっと効率のよい方法があるのかもしれませんが、このあたりのSQLはこぴぺすれば、shellの一部に活用できそうかな?と思いましてメモしておきます。
▼mysqldump(テーブル単位)のSQLを生成する
mysql -u YourUserID -pYourPassword -e "select concat('mysqldump -u YourUserID -pYourPassword',' ',TABLE_SCHEMA,' ',TABLE_NAME, ' ;') from information_schema.TABLES WHERE TABLE_SCHEMA not in ('information_schema','mysql')"
select concat('DROP TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' ;') from information_schema.TABLES WHERE TABLE_SCHEMA NOT IN ('information_schema','mysql');
▼ show master status binログ情報、およびポジション情報を取得する
mysql -u YourUserID -pYourPassword -e "show master status\G" | grep File | awk -F: '{print $2}'
mysql-bin.000036
mysql -u YourUserID -pYourPassword -e "show master status\G" | grep Position | awk -F: '{print $2}'
404664