天天看點

同一個執行個體下拷貝資料庫到其他庫下

要什麼變量替換,直接複制粘貼,程式跑起來就走。

#!/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;"

本文轉自 lirulei90 51CTO部落格,原文連結:http://blog.51cto.com/lee90/1931253,如需轉載請自行聯系原作者