AnyBackup-MySQL 数据库恢复失败,提示错误信息:恢复失败,原因:创建MySQL数据库出现异常。The MySQL server is running with the --super-r
关键字
super-read-only、只读
适用产品
- AnyBackup 6.0.x
- AnyBackup Express 7.0.x
- AnyBackup CDM 7.0.x
- AnyBackup Enterprise 7.0.x
问题描述
在 AnyBackup 管理控制台执行 MySQL 数据库恢复任务失败,提示错误信息:
恢复失败,原因:创建MySQL数据库出现异常。The MySQL server is running with the --super-read-only option so it cannot exeute this statement(错误提供者:mysqlmanager,错误值:423952409)。
问题影响
在 AnyBackup 管理控制台执行 MySQL 数据库恢复任务失败。
问题原因
MySQL 数据库处于只读模式,不会发生任何数据变化,无法正常执行创建数据库、插入表数据等操作,因此数据库恢复操作无法完成。
解决方案
为了解决此问题,需要将 MySQL 数据库从只读模式修改为读写模式,具体操作如下:
1.登录 MySQL 数据库服务器并登录 MySQL 数据库。
2.执行以下命令,查看 MySQL 数据库的读写模式。可以看到 “read_only”和“super_read_only“选项为”ON“,也就是当前数据库为只读模式。
show global variables like "%read_only%";
3.执行以下命令,将 MySQL 数据库由只读模式改为读写模式。
unlock tables;
set global read_only=0;
set global super_read_only=0;
4.重新执行以下命令查看 MySQL 数据库的读写模式,可以看到 MySQL 数据库已经修改为读写模式。
show global variables like "%read_only%";
更多信息
MySQL 数据库读写状态主要靠”read_only“全局参数来设定。默认情况下,数据库是可执行读写操作的,所以 ”read_only“ 参数也是 0 或 faluse 状态,这时候不论是本地用户还是远程访问数据库的用户,都可以进行读写操作。如果需设置 MySQL 数据库为只读状态,需要将”read_only“参数设置为 1 或 TRUE 状态。read_only=1 只读模式,限定的是普通用户进行数据修改的操作,但不会限定具有 super 权限的用户的数据修改操作;super_read_only=1 只读模式, 则会限定具有 super 权限的用户的数据修改操作。