MYSQL 无法启动故障一例, 以及MYSQL 参数规范化配置问题

事情是这样的,历史原因之前有一些MYSQL的服务器我是不清楚的,后期工作忙,也没有时间,并且这些服务器也没出过问题,最近开始规整这些MYSQL,偶然发现一台服务器在添加了log-bin参数后无法启动,所以写此文来分析一下,到底什么原因造成了添加一个正常的参数 MYSQL 就无法启动的原因。

注销的地方是我后面添加的

历史原因是,之前的MYSQL 基本上连MYSQL的bin log 都没有启动,所以本次要开始做多源复制就必须要打开log-bin 但只要打开log-bin  就会显示下面的错误信息。

并且怪异的是error log 里也不会有任何错误信息

那从这样的情况来看,说明MYSQLD 去读取 my.cnf 文件还没来得及记录错误,就直接关闭了,所以需要使用命令行的方式启动 ,非命令行的启动方式可能暂时不能排查错误。

直接命令行进行启动

第一错误提示是mysqld 使用的是 root 账号启动的,这是一个常识性的问题,一般是不允许使用root来启动和操作MYSQL的,但目前已经是这样的状态,所以需要添加一个参数,让MYSQL 来继续运行。

需要添加 user=root 参数到配置文件中

我们再次启动MYSQL 发现还是无法启动

本次的提示中主要无法启动的原因是 server-id 在配置中没有,导致无法启动 binlog 。

添加server_id 参数后,服务器可以正常启动了。

后续根据某些后期的要求又添加了,如下参数,并且MYSQL 也没有在报错误。

通过此次的事情,可以看出,MYSQL 和其他数据库的不同,尤其在配置参数上来说,看上去可能少一个参数,少两个参数对于一个大约有400多个接近500个配置参数的MYSQL 来说没有什么什么了不起,但MYSQL的配置参数是一环套一环的,所以了解基本或常用的MYSQL的参数是很有必要的。

同时一般来说我都是建议配置MYSQL 要有一个模板的,参数的模板,并且可以根据参数的必要性来进行一些必要的注释,或者根据MYSQL的不同需求,来配置几个不同的模板。而临时去拼凑的MY.CNF 是不建议的。

所以MY.CNF 的规范化还是很有必要的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值