当前位置:Gxlcms > mysql > mysql备份问题_MySQL

mysql备份问题_MySQL

时间:2021-07-01 10:21:17 帮助过:34人阅读

bitsCN.com

在进行数据备份、恢复时,碰到的问题罗列如下:

问题一:1.数据迁移异常,ubuntu下迁移完数据目录,数据库不能启动

数据库默认使用mysql用户来启动数据库,请检查新迁移的数据目录,mysql对其是否具有读写权限。如果没有,请授予其读写权限。如果是在ubuntu环境中使用apt-get命令安装的数据库,修要修改/etc/apparmor.d/usr.sbin.mysqld的内容,添加新增目录的相关信息。

问题二:2.flush log引发备份为空的问题

表现:使用mysqldump -uxxx -pxxxx --flush-logs --master-data=2 --hex-blob -R -f --all-databases 2>>$tmpfile时发现$tmpfile里面的内容是空的。
解决方法:是mysql版本问题,该版本存在此bug,mysql5.5.28已修复此bug。

问题三:3.mysqldump报error1449

使用mysqldump导出数据库的时候出现这个错误: mysqldump: Got error: 1449: The user specified as a definer ('jing'@'%') does not exist when using LOCK TABLES.
解决方法:数据库创建时使用的是脚本创建,里面对某些对象的定义,使用了definer。但数据库中是并不存在这个用户的,解决方法是,修改这些个对象的definer对象。

问题四:4.数据时,函数不能导入,数据导入后,执行计划不能定时执行

函数不能成功导入时,如果可以,关闭二进制日志,再导入函数。如二进制日志要求打开,设置:

log_bin_trust_function_creators=on;

数据导入后,保证执行计划定时执行,请设置:

event_scheduler=on

问题五:5.数据恢复时,报1114错误 the table is full

该表使用的是memory存储引擎,如果批量导入会因为数据库内存临时表设置过小而报错。增大内存临时表大小
set global max_heap_table_size=167772160;
set global tmp_table_size=167772160;

bitsCN.com

人气教程排行