转载说明:如果您喜欢这篇文章并打算转载它,请私信作者取得授权。感谢您喜爱本文,请文明转载,谢谢。
在centos8系统上安装MySQL,使用的是centos7上安装MySQL的脚本,出现了以下问题,以做记录:
问题一:日志文件不存在,MySQL无法启动
错误日志:
[root@confluence packages]# /etc/init.d/mysqld restartERROR! MySQL server PID file could not be found!
Starting MySQL.2022-01-15T03:58:44.753030Z mysqld_safe error: log-error set to '/var/log/mariadb/mariadb_error.log', however file don't exists. Create writable for user 'mysql'.ERROR! The server quit without updating PID file (/home/confluence/mysql/mysql_data/confluence.pid).
原因和解决方法:
根据日志提示,MySQL无法启动是因为指定的日志文件/var/log/mariadb/mariadb_error.log不存在
touch创建/var/log/mariadb/mariadb_error.log,并修改权限为mysql:mysql,该错误解决。
问题二:/etc/my.cnf文件为空,MySQL无法启动
错误日志:
[root@confluence packages]# /etc/init.d/mysqld start
Starting MySQL.. ERROR! The server quit without updating PID file (/home/confluence/mysql/mysql_data/confluence.pid).
[root@confluence packages]#
原因和解决方法:
原因是/etc/my.cnf文件是空的,什么配置都没有。
查看/etc/my.cnf,文件没有配置数据目录等信息,文件内容如下:
[root@confluence mysql]# cat /etc/my.cnf
#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]#
# include all files from the config directory
#
!includedir /etc/my.cnf.d[root@confluence mysql]#
/etc/my.cnf.d目录下只存在client.cnf一个文件,内容也是空的:
[root@confluence mysql]# cat /etc/my.cnf.d/client.cnf
#
# These two groups are read by the client library
# Use it for options that affect all clients, but not the server
#
[client]
# This group is not read by mysql client library,
# If you use the same .cnf file for MySQL and MariaDB,
# use it for MariaDB-only client options
[client-mariadb][root@confluence mysql]#
把/etc/my.cnf文件补充完整,问题即解决。
问题三:/etc/my.cnf文件权限过大导致MySQL无法启动
错误日志:
[root@confluence etc]# /etc/init.d/mysqld start
my_print_defaults: [Warning] World-writable config file '/etc/my.cnf' is ignored.
Starting MySQL.my_print_defaults: [Warning] World-writable config file '/etc/my.cnf' is ignored.
my_print_defaults: [Warning] World-writable config file '/etc/my.cnf' is ignored.
.. ERROR! The server quit without updating PID file (/home/confluence/mysql/mysql_data/confluence.pid).
[root@confluence etc]#
原因和解决方法:
原因是因为/etc/my.cnf文件是从其它节点拷贝拷贝过来的,上传后默认的权限过大。把/etc/my.cnf文件的权限改成644,重新启动MySQL则成功。