我正在使用mariadb和我调查一些问题,我想检查日志。令我惊讶的是,没有为mariadb生成日志文件。
我怀疑这不可能是这样的,所以我怀疑我的搜索技能。
MariaDB [(none)]> show variables like 'log_error'
-> ;
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_error | |
+---------------+-------+
1 row in set (0.00 sec)
字符串
我已经在我的.cnf中添加了条目,仍然在字段上方,即将为空。
[root@cslcodev11-oem ~]# 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@cslcodev11-oem ~]#
型
所以,我想知道,如果无法从配置文件中读取路径,我们是否有任何默认的位置来生成这些日志。
更新:
经过一番调查,我发现了这条信息
- 参考:https://mariadb.com/kb/en/mariadb/error-log/ *
激活错误日志
默认情况下,错误日志处于活动状态。log-error=filename选项确定输出将写入的位置。如果未指定文件名,则日志将写入host-name.err.如果未指定绝对路径,文件将写入数据目录(由datadir系统变量的值确定)。
- 在Unix系统上,如果不使用--log-error选项,则错误将写入stderr(通常是命令行)。*
- 在Windows上,如果指定了--console选项,并且没有使用--log-error,则错误将写入控制台。如果存在--log-error,则忽略--console。*
所以现在我明白了,由于某种原因,我的.cnf中的配置log_error没有被考虑。因此,根据建议,在Unix系统上,如果不使用--log-error,则日志将重定向到stdout。
但是,我开始使用service mysqld start
命令的服务,所以我想知道什么是所有的选项都使用默认情况下,当我们使用service mysql start
启动服务?ESP,是否使用了--log-error?
1条答案
按热度按时间70gysomp1#
如果您目前使用的是2023版本的MariaDB,并且您已经激活了MariaDB日志,则下面的其中一个命令可能会显示日志位置。哪个命令起作用取决于您的操作系统:
字符串
或者是
型
或者是
型
如果上述方法无效,请检查您的系统是否设置为写入syslog,在这种情况下,您需要使用journalctl来访问它。
来源于https://mariadb.com/kb/en/error-log/