2015-09-04 29 views

回答

0

您可以使用下面的腳本,它只複製那些表,不存在於目標數據庫中。

#!/bin/bash 

USER=root 
PASS=root123 
SOURCE_DB=db1 
TARGET_DB=db2 

TBL=`mysql -u$USER -p$PASS -e"SET group_concat_max_len=102400;SELECT GROUP_CONCAT(DISTINCT a.table_name SEPARATOR ' ') FROM information_schema.tables a LEFT JOIN information_schema.tables b ON a.table_name=b.table_name AND b.table_schema='$TARGET_DB' AND b.table_type='BASE TABLE' WHERE a.table_schema='$SOURCE_DB' AND b.table_name IS NULL AND a.table_type='BASE TABLE';"` 

mysqldump --single-transaction -u$USER -p$PASS $SOURCE_DB $TBL | mysql -u$USER -p$PASS $TARGET_DB 

變化根無論你的用戶

root123與該用戶密碼

DB1到源DB

DB2到目標數據庫

相關問題