mysql 无法停止和启动,状态一直是 Active: deactivating (stop-sigterm)

问题

本想设置一下mysql log 日志时间,修改了 my.inf 之后, restart mysqld 一直起不来,查看服务状态,一直是 deactivating (stop-sigterm)

复制代码
	# systemctl status  mysqld
	● mysqld.service - MySQL Server
	   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
	   Active: deactivating (stop-sigterm) (Result: exit-code)
	     Docs: man:mysqld(8)
	           http://dev.mysql.com/doc/refman/en/using-systemd.html
	  Process: 1130 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=1/FAILURE)
	  Process: 1031 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
	   CGroup: /system.slice/mysqld.service
	           └─1233 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mys...
	
	8月 17 18:27:46 centos-192 systemd[1]: Starting MySQL Server...
	8月 17 18:31:04 centos-192 systemd[1]: mysqld.service: control process exit...1
	Hint: Some lines were ellipsized, use -l to show in full.

加上 -l

复制代码
	[root@centos-192 ~]# systemctl status  mysqld -l
	● mysqld.service - MySQL Server
	   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
	   Active: deactivating (stop-sigterm) (Result: exit-code)
	     Docs: man:mysqld(8)
	           http://dev.mysql.com/doc/refman/en/using-systemd.html
	  Process: 1130 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=1/FAILURE)
	  Process: 1031 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
	   CGroup: /system.slice/mysqld.service
	           └─1233 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
	
	8月 17 18:27:46 centos-192 systemd[1]: Starting MySQL Server...
	8月 17 18:31:04 centos-192 systemd[1]: mysqld.service: control process exited, code=exited status=1
	
	8月 18 06:28:42 centos-192 systemd[1]: Starting MySQL Server...
	-- Subject: Unit mysqld.service has begun start-up
	-- Defined-By: systemd
	-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
	-- 
	-- Unit mysqld.service has begun starting up.
	8月 18 06:28:53 centos-192 mysqld[2075]: Initialization of mysqld failed: 0
	8月 18 06:28:53 centos-192 systemd[1]: mysqld.service: control process exited, code=exited status=1
	8月 18 06:29:10 centos-192 systemd[1]: Failed to start MySQL Server.
	-- Subject: Unit mysqld.service has failed
	-- Defined-By: systemd
	-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
	-- 
	-- Unit mysqld.service has failed.
	-- 
	-- The result is failed.
	8月 18 06:29:10 centos-192 systemd[1]: Unit mysqld.service entered failed state.
	8月 18 06:29:10 centos-192 systemd[1]: mysqld.service failed.
	8月 18 06:29:11 centos-192 systemd[1]: mysqld.service holdoff time over, scheduling restart.
	8月 18 06:29:11 centos-192 systemd[1]: Stopped MySQL Server.
	-- Subject: Unit mysqld.service has finished shutting down
	-- Defined-By: systemd
	-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
	-- 
	-- Unit mysqld.service has finished shutting down.
	8月 18 06:29:11 centos-192 systemd[1]: Starting MySQL Server...
	-- Subject: Unit mysqld.service has begun start-up
	-- Defined-By: systemd
	-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
	-- 
	-- Unit mysqld.service has begun starting up.
	8月 18 06:29:21 centos-192 mysqld[2126]: Initialization of mysqld failed: 0
	8月 18 06:29:21 centos-192 systemd[1]: mysqld.service: control process exited, code=exited status=1

没有看出一个所以然!

查看日志

复制代码
# head /var/log/mysqld.log 
2023-08-11T12:22:52.567256Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2023-08-11T12:22:55.551353Z 0 [Warning] InnoDB: New log files created, LSN=45790
2023-08-11T12:22:56.101603Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2023-08-11T12:22:56.558025Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: cd6d347e-3841-11ee-9af3-00155d32bd0b.
2023-08-11T12:22:56.616202Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2023-08-11T12:22:57.763072Z 0 [Warning] A deprecated TLS version TLSv1 is enabled. Please use TLSv1.2 or higher.
2023-08-11T12:22:57.763093Z 0 [Warning] A deprecated TLS version TLSv1.1 is enabled. Please use TLSv1.2 or higher.
2023-08-11T12:22:57.766023Z 0 [Warning] CA certificate ca.pem is self signed.
2023-08-11T12:22:58.002974Z 1 [Note] A temporary password is generated for root@localhost: TD%TZ*jB.7Tk
2023-08-11T12:23:28.164212Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

看到这一条: [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

才想起来,原来是我设置 mysql 日志格式造成的 ?

去掉这一行设置

复制代码
# vim /etc/my.cnf

# wzh 20230817
# default-time-zone='Asia/Shanghai'

现在是这样子

复制代码
# vim /etc/my.cnf
...
# wzh 20230817
# default-time-zone='Asia/Shanghai'
explicit_defaults_for_timestamp=true
log_timestamps=SYSTEM

另外日志中出现 " ... Security ... " ,安装完 centos 7 虚拟机,一直没有关闭 Selinux ! 手动关掉后,reboot!

总结:

突然出现奇怪问题的时候,先看服务状态,再看 log ,想象自己修改过什么配置

本次问题原因在于: default-time-zone='Asia/Shanghai'

相关推荐
paperxie_xiexuo18 小时前
如何高效完成科研数据的初步分析?深度体验PaperXie AI科研工具中数据分析模块在统计描述、可视化与方法推荐场景下的实际应用表现
大数据·数据库·人工智能·数据分析
w***48118 小时前
Springboot项目本地连接并操作MySQL数据库
数据库·spring boot·mysql
司铭鸿19 小时前
图论中的协同寻径:如何找到最小带权子图实现双源共达?
linux·前端·数据结构·数据库·算法·图论
友友马19 小时前
『MySQL』 - 事务 (二)
数据库·mysql·oracle
薛晓刚19 小时前
OceanBase的嵌入式数据库:vscode+python+seekdb
数据库
owCode19 小时前
OceanBase训练营miniob提测踩坑
数据库·oceanbase·数据库开发
wind_one119 小时前
16。基础--SQL--DQL-分页查询
数据库·sql
q***420519 小时前
python的sql解析库-sqlparse
数据库·python·sql
ashane131420 小时前
Flask-SQLAlchemy db 使用说明
数据库·oracle
FinTech老王21 小时前
集中式 vs 分布式数据库:金融用户如何选择?——金仓数据库的双架构实践与选型指南
数据库·分布式·金融