我的my.cnf中的mariadb配置未加载"log-error"
和"pid-file"
。我检查了其他配置params已加载。
[root@kvm10 ~]# cat /etc/my.cnf
[mysqld]
!includedir /etc/mysqld/conf.d
datadir=/mnt/mgmt/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
tmpdir=/mnt/mgmt/var/lib/mysql_tmp
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
### TRT-3229 #####
sync_binlog=1
innodb_flush_method=O_DIRECT
innodb_support_xa = 1
myisam_repair_threads = 2
myisam_recover_options = FORCE
###################
innodb_file_per_table=1
innodb_log_buffer_size = 8M
table_open_cache=256
max_heap_table_size=256M
### TRT-4685 ###
max_connections=500
################
innodb_log_file_size = 512M
[mysqld_safe]
log-error=/var/log/mariadb/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[root@kvm10 ~]#
但log-error
&的配置值MariaDB没有选择pid-file
。
[root@kvm10 ~]# mysql -e "show variables like 'pid_file'"
+---------------+-----------------------------------+
| Variable_name | Value |
+---------------+-----------------------------------+
| pid_file | /mnt/mgmt/var/lib/mysql/kvm10.pid |
+---------------+-----------------------------------+
[root@kvm10 ~]# mysql -e "show variables like 'log_error'"
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_error | |
+---------------+-------+
[root@kvm10 ~]#
我错过了一些事情或犯了一些错误。我已检查/var/log/mariadb/mysqld.log
&中的文件权限/var/run/mysqld/mysqld.pid
。
答案 0 :(得分:1)
如果通过直接或通过旧式初始化脚本(MariaDB 5.5 / 10.0或更早版本的Linux发行版)运行mysqld_safe
来启动服务器,则应该选择配置文件中的这些选项。如果您拥有支持systemd
的MariaDB 10.1+和Linux发行版并通过该服务启动MariaDB服务器,则不使用mysqld_safe
。
它们可能不起作用的另一个原因是,如果您在没有mysqld_safe
选项的情况下启动--defaults-file
,并且在默认位置的其他地方有另一个配置文件会覆盖这些选项。
1)将选项添加到配置文件的[mysqld]
部分,重新启动服务器并查看是否有帮助。
如果它没有帮助,
2a)如果您通过systemd
服务运行MariaDB服务器,请检查服务配置,可能还有其他内容;
2b)如果您通过mysqld_safe
运行MariaDB服务器,请尝试使用--defaults-file=/etc/my.cnf
启动它,以确保只使用此配置文件。