mysql 两个数据库指定表同步_mysql从2个数据库中同步两个表
我無法相信你沒有找到合適的腳本來做到這一點(diǎn).根據(jù)服務(wù)器到服務(wù)器的帶寬和連接以及表數(shù)據(jù)大小,您可以:
>直接轉(zhuǎn)移整個(gè)表:
mysqldump [options] sourcedatabase tablename \
| mysql [options] --host remoteserver --user username ...
>使用MySQL壓縮傳輸表
# same as above, mysql has the "-C" flag
>使用SSH加密和壓縮進(jìn)行傳輸; mysql是遠(yuǎn)程執(zhí)行的
mysqldump [options] sourcedatabase tablename \
| ssh -C user@remoteserver 'mysql [options]'
>使用中間SQL文件和rsync傳輸僅傳輸修改
mysqldump [options] sourcedb tbl > dump.sql
rsync [-z] dump.sql user@remoteserver:/path/to/remote/dump.sql
ssh user@remoteserver "mysql [options] < /path/to/remote/dump.sql"
以上都是簡單的表覆蓋,遠(yuǎn)程數(shù)據(jù)是LOST并由主副本替換. mysqldump-plus-rsync-plus-ssh的運(yùn)行時(shí)間大致與修改成比例,這意味著如果你有一個(gè)10 GB的SQL轉(zhuǎn)儲并添加了十幾個(gè)INSERTS,那么傳輸階段最多需要幾秒鐘來同步兩個(gè)SQL文件.
要優(yōu)化插入階段,要么進(jìn)行完整的MySQL復(fù)制,要么需要一種方法來識別表上的操作,以便在同步時(shí)手動復(fù)制它們.這可能需要改變表結(jié)構(gòu),例如,添加“l(fā)ast-synced-on”和“needs-deletion”列,甚至引入輔助表.
總結(jié)
以上是生活随笔為你收集整理的mysql 两个数据库指定表同步_mysql从2个数据库中同步两个表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql select from us
- 下一篇: 学mysql是学指令吗_学习Mysql