Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2593713
  • 博文数量: 2110
  • 博客积分: 18861
  • 博客等级: 上将
  • 技术积分: 24420
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-05 18:23
文章分类

全部博文(2110)

文章存档

2011年(139)

2010年(1971)

我的朋友

分类: Mysql/postgreSQL

2010-01-21 13:20:55


MySQL 5 版以上



记录MySQL系统产生的错误信息和SQL相关信息及复制等信息

[mysqld]

log_error=/var/log/mysqld.log



记录MySQL  DDl操作的信息(insert/update/delete) 供 slave 用

[mysqld]

log-bin=/log/hostname-bin  #log 目录拥有者和所属组为mysql:mysql


记录慢查询相关信息

[mysqld]

slow_query_log_file=/var/log/mysql-slow.log

long_query_time=1



一般来说,MySQL 提供三类的 LOG:

1. Binary Log:记录所有对于数据库的操作

2. General Log:记录client到MYSQL DB 的所有查询信息,开启,产用的日志非常大

3. Slow Log:记录所有的慢查询 Slow Query


编译安装的MySQL Server 的 err-log  与 Slow Log 不会 Logrotate。例如在 Linux 系統中可以在 /etc/logrotate.d 中加上 mysqld,内容为:


/var/log/mysqld.log /var/log/mysql-slow.log {

weekly

rotate 4

create 0644 mysql mysql

missingok

notifempty

sharedscripts

postrotate

# 用來 flush-logs 的用户需要有 RELOAD 的权限

/usr/bin/mysqladmin -u 用户 -p密码 flush-logs

endscript

}


设置如下

vi /etc/my.cnf

[mysqld]

log_error=/var/log/mysqld.log

log-bin=/log/hostname-bin

slow_query_log_file=/var/log/mysql-slow.log

long_query_time=1





vi /etc/logrotate.d/mysqld


/var/log/mysqld.log /var/log/mysql-slow.log {

weekly

rotate  4

mail  ##发送到指定管理员邮箱
mailfirst

create 0644 mysql mysql

missingok

notifempty

sharedscripts

postrotate

# 用來 flush-logs 的用户需要有 RELOAD 的权限

/usr/bin/mysqladmin -u 用户 -p密码 flush-logs

endscript

}




Debug

logrotate -fv /etc/logrotate.d/mysqld

阅读(366) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~