mysql 日志文件

来源:互联网 发布:店铺优化是什么意思 编辑:程序博客网 时间:2024/06/11 13:38

可以通过 show variables和show status查看mysql参数,show variables查看的是静态的参数,启动之后无法更改的参数,show status查看的是可以动态变化的参数。

mysqld --verbose --help|more 查看参数说明


错误日志

show variables like "%log_error%";查看错误日志位置  通过在配置文件配置log_error = /var/log/mysql/error.log


慢查询日志

long_query_time 设置阈值

log_slow_queries 设置慢查询日志名,默认是关闭的,当超过long_query_time阈值会记录sql语句

另外开启log_queries_not_using_indexes之后也会把没使用索引的sql语句记录到慢查询日志中

日志在mysql库的slow_log表中。

mysql> show create table mysql.slow_log;
+----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table    | Create Table                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| slow_log | CREATE TABLE `slow_log` (
  `start_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `user_host` mediumtext NOT NULL,
  `query_time` time NOT NULL,
  `lock_time` time NOT NULL,
  `rows_sent` int(11) NOT NULL,
  `rows_examined` int(11) NOT NULL,
  `db` varchar(512) NOT NULL,
  `last_insert_id` int(11) NOT NULL,
  `insert_id` int(11) NOT NULL,
  `server_id` int(10) unsigned NOT NULL,
  `sql_text` mediumtext NOT NULL
) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log' |
+----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
 

log_output 参数指定了慢查询的输出日志,默认是file,文件可以通过mysqldumpslow命令查看

 log_output可以设置为table,就可以查表了。

查询日志

general_log 开启之后会记录所有对数据库请求的信息。

general_log_file 日志文件名。

和慢查询日志相似,也可以输出到mysql.general_log表

二进制日志

max_binlog_size 指定单个二进制日志最大值

binlog_cache_size 未提交事务的二进制日志在缓存中,binlog_cache_size设置了缓存的大小,大于改大小会写到临时文件中

binlog_cache_use 二进制日志写入缓存的次数

binlog_cache_disk_use 二进制日志写入临时文件的次数

sync_binlog = n 每写缓存多少次同步到硬盘

binlog_do_db binlog_ignore_db 表示需要写人和忽略哪数据库的二进制日志

通过mysqlbinlog查看日志




0 0
原创粉丝点击