mysqldump:错误:服务器上的二进制日志未激活-全面的解决方案

mysqldump:错误:服务器上的二进制日志未激活

我正在使用 mysqldump 实用程序备份我的ubuntu15.10服务器上的MariaDB数据库时,出现以下错误:

mysqldump: Error: Binlogging on server not active

大多数情况下,解决方案非常简单。 您需要做的就是启用二进制日志记录。 打开MariaDB配置文件。

sudo vi /etc/mysql/mariadb.conf.d/mysqld.cnf

此配置文件用于配置 mysqld。 在文件中找到以下行。

#log_bin = /var/log/mysql/mysql-bin.log

删除哈希(#)号。 如果找不到它,则将以下行添加到文件中。

log_bin = /var/log/mysql/mysql-bin.log

保存并关闭文件。 现在重新加载MariaDB配置。

sudo systemctl reload mysql            or        sudo service mysql reload

现在,您应该可以使用mysqldump实用程序来备份数据库了。

MariaDB重新加载无法正常工作

如果看到以下错误

Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.

这意味着MariaDB配置重新加载失败。 因此,您可能以为我只需要重新启动它即可。

sudo systemctl restart mysql            or             sudo service mysql restart

好了,执行重启命令后什么也没出现。 但是当你使用 mysqldump 要再次备份数据库,您可能会发现二进制日志记录仍未激活。

mysqldump: Error: Binlogging on server not active

为了解决这个问题,我们需要使用pkill命令杀死mysqld进程。

sudo pkill mysqld

杀死后,MariaDB将自动启动。 现在您应该可以使用mysqldump备份数据库了。

干杯!

Sidebar