Fedora 16 未设置 MySQL 服务器 ID

Fedora 16 未设置 MySQL 服务器 ID

我正在 Fedora 16 系统上设置 mysql 从属设备,但设置server_id不正确。我的/etc/my.cnf是:

[mysqld]
server-id=16
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
read-only = 1
symbolic-links=0
max_allowed_packet = 100000000

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

但是,后面的systemctl restart mysqld.serviceshow variables like "server_id"表示server_id0,这会导致复制失败。

/var/log/mysqld.log上次修改是在我上次重新启动服务器时,但是从那时起就没有日志条目了(我今天重新启动了,最后一个条目是昨天的)。

为什么不起作用server-id=16?是否需要在其他文件中设置?或者,有没有办法编辑systemd单元文件,以便mysqld从命令行选项启动--server-id=,或者mysqld运行 SQL 语句来设置server_id启动时的值?

答案1

使用检查selinux上下文,它们可能是错误的

对于mysqld启动、关闭消息,除了 之外/var/log/mysqld.log,还检查/var/log/messages

如果消息(警告/错误)显示sealert建议,请检查 mysqld selinux 上下文,它们可能是错误的或过时的。相应更新可能会解决该问题。

--server-id=要在 mysqld 启动脚本中使用,请检查以下位置

/etc/sysconfig/

也许有一个mysqld文件可以自定义启动选项。

/etc/rc.d/init.d/

mysqld启动脚本驻留在此处。您可以在脚本中对该选项进行硬编码。但每次升级时您都必须应用更改。

PS:您可能需要考虑将从机操作系统切换到 debian/ubuntu,这样系统知识将适用于两台机器。此外,(恕我直言)Fedora 对于生产/服务器来说并不是一个好的选择,因为发行版的生命周期很短(6 个月的保质期 + 6 个月的更新支持)。如果首选 RedHat 相关操作系统,请使用 RedHat 或 CentOS。

相关内容