mysql8.0纯命令模式备份还原数据库
作者:
来源:本站原创
点击数: 次
发布时间:2023年04月24日
1.创建数据库
CREATE DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
2.还原数据库
mysql -u username -p 数据库名 < your_sql_file.sql;
username是你的MySQL用户名,your_sql_file.sql是你要还原的.sql文件的路径。
3.备份数据库
mysqldump -u用户名 -p密码 数据库名 | gzip > /data/mysql/20230422.sql.gz;
常见问题:
1.mysql用户密码带符号,例如:密码为Admin666!@#
mysqldump -uroot -pAdmin666!@# hnwzdb > /home/20230424.sql
-bash: !@#: event not found
改为
mysqldump -uroot -pAdmin666\!@# hnwzdb > /home/20230424.sql
2.还原数据库报错@@GLOBAL.GTID_PURGED cannot be changed: the added gtid set must not overlap with @@GLOBAL.GTID_PURGED
原因是导出的sql文件中带GTID即全局事务ID(global transaction identifier)
处理方法:
1.手动删掉SET @@GLOBAL.GTID_PURGED=这一行
2.在目标数据库中执行
mysql> reset slave all;
mysql> reset master;
清空所有 GTID 信息