同一個實例下拷貝資料庫到其他庫下
- 2019 年 10 月 5 日
- 筆記
要什麼變數替換,直接複製粘貼,程式跑起來就走。
#!/bin/bash
# 將hellodb的數據拷貝到hellodb_bak庫裡面。
mysql -uroot -pAbcd@1234 -h 10.0.20.26 -P3306 2>/dev/null -e "flush tables with read lock;"
mysql -uroot -pAbcd@1234 -h 10.0.20.26 -P3306 2>/dev/null -e "create database hellodb_bak;"
tbname=$(mysql -uroot -pAbcd@1234 -h 10.0.20.26 -P3306 2>/dev/null -e "SELECT table_name from information_schema.tables where TABLE_SCHEMA='hellodb'")
for i in $tbname; do
mysql -uroot -pAbcd@1234 -h 10.0.20.26 -P3306 hellodb_bak 2>/dev/null -e "create table $i like hellodb.$i"
mysql -uroot -pAbcd@1234 -h 10.0.20.26 -P3306 hellodb_bak 2>/dev/null -e "insert into $i select * from hellodb.$i"
done
mysql -uroot -pAbcd@1234 -h 10.0.20.26 -P3306 2>/dev/null -e "unlock tables;"