今天从库导入mysqldump
备份的库信息时,发现了一个现象。
现象
备份命令
mysqldump -uroot -p -S /dbdata/mysql3306/mysql.sock -B world > a.sql
可以看到上方命令没有加--set-gtid-purged=off
,a.sql
文件中会带有GTID
信息
导入a.sql
有两种方式:
- ①
mysql -uroot -p < /root/a.sql
- ②登录mysql,执行
source /root/a.sql
结果两种方法产生的结果完全不一样,这应该是source
和mysql -ruoot -p <
的区别之一
- ①的结果:提示目标库的
GTID
必须为空才行 - ②的结果:可以导入,虽然报错了,但是数据还是进去了,产生了
world
库
总结
mysql <
:遇到报错会中止source
:遇到报错不会中止
欢迎高手指出错误!我也只是记个笔记。。。。。