IT技术博客大学习 共学习 共进步

MySQL error log 输出到syslog

虎子的BLOG 2011-04-28 13:38:11 浏览 4,843 次

在通常情况下,MySQL 的日志信息会输出到数据目录中的hostname.err文件中。以前一直想,能不能把日志通过 syslog输出到系统的LOG中,便于统一分析处理。当然,通过 syslog输出以系统LOG是第一步,后面是集中管理日志环节。

以前,启动mysql 都是通过service mysqld start来启动,现在改变了这种方式,通过 mysqld_safe 脚本来启动mysql。我们想把日志通过 syslog输出到系统LOG中,同样是通过他来设置。平时可能我们只是通 /usr/local/mysql/mysqld_safe -user=mysql & 来启动,没有注意其它选项:下面我们来看看如下几个选项

-syslog                   Log messages to syslog with ‘logger’           #输出错误信息日志到syslog

-syslog-tag=TAG           Pass -t “mysqld-TAG” to ‘logger’    #输出错误信息的标识

现在进行如下测试:

我把MySQL启动方式改为: /usr/local/mysql/bin/mysqld_safe --syslog --syslog-tag="mysql-log" --user=mysql &

查看系统日志 tail /var/log/messages 输出如下:

Apr 24 20:28:18 localhost mysqld_safe-mysql-log: Starting mysqld daemon with databases from /data/mysql
Apr 24 20:28:18 localhost  mysqld-mysql-log: 110424 20:28:18 [Note] Plugin ‘FEDERATED’ is disabled.
Apr 24 20:28:18 localhost  mysqld-mysql-log: 110424 20:28:18 [Note] Plugin ‘InnoDB’ is disabled.
Apr 24 20:28:18 localhost  mysqld-mysql-log: 110424 20:28:18 [Note] Plugin ‘ndbcluster’ is disabled.
Apr 24 20:28:18 localhost  mysqld-mysql-log: 110424 20:28:18 [Note] Event Scheduler: Loaded 0 events
Apr 24 20:28:18 localhost  mysqld-mysql-log: 110424 20:28:18 [Note] /usr/local/mysql/libexec/mysqld: ready for connections.
Apr 24 20:28:18 localhost 2 mysqld-mysql-log: Version: ‘5.1.41-Lovebsd-com’  socket: ‘/tmp/mysql.sock’  port: 3306  Source

我们发现,MySQL错误日志通过 SYSLOG输出到系统日志中。

建议继续学习

  1. SysLog个人经验总结和分享 (阅读 4,082)
  2. 使用 syslog-ng 可靠地记录物联网事件 (阅读 2,082)