mariadb日志存在于何处

xj3cbfub  于 10个月前  发布在  其他
关注(0)|答案(1)|浏览(93)

我正在使用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 ~]#


所以,我想知道,如果无法从配置文件中读取路径,我们是否有任何默认的位置来生成这些日志。

更新:

经过一番调查,我发现了这条信息

默认情况下,错误日志处于活动状态。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?

70gysomp

70gysomp1#

如果您目前使用的是2023版本的MariaDB,并且您已经激活了MariaDB日志,则下面的其中一个命令可能会显示日志位置。哪个命令起作用取决于您的操作系统:

mariadbd --print-defaults

字符串
或者是

mariadb --print-defaults


或者是

my_print_defaults --mysqld | grep log-error


如果上述方法无效,请检查您的系统是否设置为写入syslog,在这种情况下,您需要使用journalctl来访问它。
来源于https://mariadb.com/kb/en/error-log/

相关问题