参照先:
DB(soe_admin)というDBを複数して、複数のDBにインポートするshellです。
イメージ:
[RDS:1]
①DBをdumpする
②soe_admin > clients に必要な情報を書き込む
[RDS:2]
①DBのインポートを行う。
1以下のshellを作成する
=============================
#!/bin/bash
#Dump only
HOSTNAME="127.0.0.1"
PORT="3306"
USERNAME="root"
PASSWORD="pass"
dump_db="soe_testcase001"
#Import only
HOSTNAME2="127.0.0.1"
PORT2="3306"
USERNAME2="root"
PASSWORD2="pass"
#Table Write only
MYSQL_SCHEMA="soe_admin"
VALUE=`echo ${QUERY} | ${CMD_MYSQL}`
CMD_MYSQL="mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} --show-warnings $MYSQL_SCHEMA"
mysqldump -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} soe_testcase001 > soe_dump.sql
for i in `cat ./test.txt`
do
cp soe_dump.sql $i
create="create database if not exists $i;"
mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} -e "${create}"
mysql -h${HOSTNAME2} -P${PORT2} -u${USERNAME2} -p${PASSWORD2} $i < $i
${CMD_MYSQL} <<EOF
INSERT INTO clients (client_cd, resq_client_cd, client_dbname, db_type, description, dropped_flag, created_datetime, modified_datetime, deleted_flag, dbhost) VALUES ("$i", " ", "$i", " ", " ", " ", " ", " ", " ", "$HOSTNAME")
EOF
done
================================
2)for文には、test.txtというファイルを見て、実行してくれる
2)test.txtというファイルを作成して、新規DBリストを記載するので
必要な分だけDB名を書き込んでおくこと!
例:
0 件のコメント:
コメントを投稿