MySQL同主机不同数据库的复制命令:注意运行在Terminal中,不运行在MySQL命令行中。

mysqldump Portal_DEV -u root -ppassword1 --add-drop-table | mysql Portal_Optimize -u root -ppassword1

在复制过程中,出现如下报错:

ERROR 1153 (08S01) at line 1160: Got a packet bigger than 'max_allowed_packet' bytes
mysqldump: Got errno 32 on write

需要将my.cnf中的max_allowed_packet 放大,我本机默认是1M,放大至32M。重启MySQL。

OK. 以上方案适用于小数据量的数据库。下面来个大容量(1G以上)的。

mysqldump -uroot -ppassword --quick Portal_DEV | gzip > Portal_DEV.contents.gz

通过以上命令,将Portal_DEV数据库导成Portal_DEV.contents.gz压缩文件。

gunzip < Portal_DEV.contents.gz | mysql -uroot -ppassword Portal_Optimize

然后通过以上命令,将Portal_DEV导入Portal_Optimize数据库。

Perfect, it's done!!!