前言:
有些时候,我们要对数据库进行备份的时候,由于GTID的缘故,导出系统库后,再次导入其他环境的数据库时,就会出问题。所以,我们需要排掉一些系统库,排除GTID对于数据库迁移的影响。
方法:
其实很简单,将下列库排出去就好:
mysql
Information_schema
database
performance_schema
sys
可以使用以下脚本:
#!/bin/bash
user=root
password=123456
data_path=/test/db_without_sys
mysql -e "show databases;" -u $user -p $password| grep -Ev "Database|information_schema|performance_schema|mysql|sys"|xargs mysqldump -uroot -p$password --set-gtid-purged=OFF --triggers --routines --events --databases > $data_path/all`date +\%Y\%m\%d\%H\%M`.sql
即可。