- 16 Linux
- 7 MySQL
- 5 javascript
- 3 jQuery
- 1 画像
- 6 Google Chorme
- 4 xampp
- 1 css
- 1 PHP
- 3 Poderosa
- 1 LINE API
- 3 Windows
Linux » テーブル毎にmysqldumpを発行するシェルスクリプト
WORK_DIR="/*output_directory_path*/"
PWFILE="/*password_file_path*/"
TABLES=()
TABLES=(${TABLES[@]} "*table_a*")
TABLES=(${TABLES[@]} "*table_b*")
for (( I = 0; I < ${#TABLES[@]}; ++I ))
do
DUMP_SQL="$WORK_DIR/${TABLES[$I]}.sql"
mysqldump --defaults-extra-file=$PWFILE -u*account* *db_name* --tables ${TABLES[$I]} > $DUMP_SQL
perl -pi -e 's/\),\(/\),\n\(/g' $DUMP_SQL
done
【概要】
*output_directory_path*
→ダンプファイル出力先ディレクトリ
*password_file_path*
→MySQL5.6からはコマンドライン上でパスワードを入力するとWarningエラーが出るので
パスワードの内容を設定した以下の2行を記述したファイルをオプションで読み込ませる
[mysqldump]
password=*your_password*
*table_xxx*
→ここにダンプしたいテーブル名を記述し、出力したい分だけ列挙する
perl -pi -e 's/\),\(/\),\n\(/g' $DUMP_SQL
→INSERT文の各レコードの区切りに改行を挿入してエディタで開きやすく&扱いやすく置換