文档章节

mysql 开启日志记录并且解决日志时间错误问题

Marhal
 Marhal
发布于 09/20 11:20
字数 675
阅读 26
收藏 2

注:(1)mysql版本5.7  ubuntu16.04

       (2)为了简明的查询日志,我在系统默认mysql日志文件夹中对日志进行了分类,并把赋予正确的权限

root@localhostserver:/var/log/mysql# mkdir bin
root@localhostserver:/var/log/mysql# mkdir general
root@localhostserver:/var/log/mysql# mkdir slow
root@localhostserver:/var/log/mysql# mkdir error
root@localhostserver:/var/log/mysql# chown -R mysql:mysql bin/
root@localhostserver:/var/log/mysql# chown -R mysql:mysql error
root@localhostserver:/var/log/mysql# chown -R mysql:mysql slow/
root@localhostserver:/var/log/mysql# chown -R mysql:mysql general/
#删除以前系统自己生成的日志,可保留
root@localhostserver:/var/log/mysql# rm -R error.log*
root@localhostserver:/var/log/mysql# rm -R mysql-bin.*
root@localhostserver:/var/log/mysql# rm mysql-general.log


 

一、开启二进制日志

查看二进制日志是否开启

mysql> show variables like 'log_bin';

编辑mysql配置文件

vi /etc/mysql/mysql.conf.d/mysqld.cnf 

注意log-bin和log_bin这个坑 

server-id               = 1
log-bin = /var/log/mysql/bin/mysql-bin.log
#log_bin                        = /var/log/mysql/mysql-bin.log
 

重启

service mysql restart

再次查询二进制日志状态

删除二进制日志

mysql> reset master;

查看日志列表

mysql> show binary logs;

查看某个日志,输入名称和上面的日志列表要对应上。

mysql> show binlog events in 'mysql-bin.000002'\G;

二、开启查询日志

#查看日志开启状态
mysql> SHOW VARIABLES LIKE 'general%';


#开启日志
mysql> SET GLOBAL general_log = 'ON';

本人mysql版本5.7  在查询日志的时候发现时间和系统时间不对

#查看系统默认时间参数

mysql> SELECT @@log_timestamps;

#重设

mysql> SET GLOBAL log_timestamps=SYSTEM; 

再去查看日志文件  就ok了

不过 ,这种形式在重启mysql后失效,那么就需要在配置文件更改

还是一样,编辑配置文件

找到这两个,去掉注释即可

general_log_file        = /var/log/mysql/general/mysql-general.log
general_log             = 1

#加上这一行,设置时间

log_timestamps = SYSTEM

重新生成查询日志

mysql> flush logs;

三、开启慢查询日志

编辑mysql配置文件

vi /etc/mysql/mysql.conf.d/mysqld.cnf 

 找到如下,注意第一行的注释是配置文件原有的,在我的服务器上直接去掉注释重启会报错,改成下面的格式才能够重启成功。

类似于上面开启bin-log一样的坑。

#log_slow_queries    = /var/log/mysql/mysql-slow.log

slow_query_log=/var/log/mysql/slow/mysql-slow.log
long_query_time = 2 
#这个时间单位为秒,也就是指 执行速度超过2秒的语句会被记录
log-queries-not-using-indexes

然后重启就可以 。

删除慢查询日志

mysql> set global slow_query_log=0;

生成一个新的慢查询日志文件:

mysql> set global slow_query_log=1;

 

© 著作权归作者所有

共有 人打赏支持
Marhal
粉丝 4
博文 82
码字总数 25081
作品 0
西安
程序员
私信 提问
MySQL主要日志的基本操作与简单解析

MySQL主要有以下几种日志: 错误日志 通用查询日志 慢查询日志 二进制日志 DDL日志 日志是mysql数据库很重要的一部分,用来记录数据库运行期间发生的变化,比如mysql数据库的客户端连接状况、...

琉浅_
05/26
0
0
mysql日志详细解析

MySQL日志: 主要包含:错误日志、查询日志、慢查询日志、事务日志、二进制日志; 日志是mysql数据库的重要组成部分。日志文件中记录着mysql数据库运行期间发生的变化;也就是说用来记录mys...

啊莫
2015/11/24
175
0
mysqldump备份报Binlogging on server not active的解决

Redhat 6.5 X64 Mysql 5.7执行备份: [root@master 3306]# mysqldump -u root -p --master-data=2 --single-transaction -R --triggers -A > all.sql Enter password: mysqldump: Error: Binl......

xiaocao13140
04/19
0
0
mysql 5.6开启日志

mysql有四种日志: 所有日志:general log 慢查询日志:slow log 二进制日志:binary log 错误日志:error log windows下在my.ini里配置,linux下在my.cnf里配置。 general log记录用户所有的...

张欢19933
2016/09/14
326
0
mysql数据库的参数以及性能的调配

mysql数据库的特性以及参数性能 一:mysql与其他数据库的比较 MySQL是一个关系型数据库管理系统,开发者为瑞典MySQL AB公司,现在已经被Sun公司收购,支持FreeBSD、Linux、MAC、Windows等多种...

tty之星
2017/06/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

寻找数学的广度——《这才是数学》读书笔记2700字

寻找数学的广度——《这才是数学》读书笔记2700字: 文|程哲。数学学习方式之广:国内外数学教育方面的专家,进行了很多种不同的数学学习方式尝试,如数学绘本、数学游戏、数学实验、数学步道...

原创小博客
13分钟前
0
0
vimrc

set rtp+=/usr/local/lib/python3.7/site-packages/powerline/bindings/vim/set laststatus=2set t_Co=256set cursorlinehi cursorline cterm=none term=nonehighlight CursorLine gui......

kut
15分钟前
0
0
ubuntu常用操作

显卡GPU 查看显卡信息sudo lshw -numeric -class video# 查看显卡型号lspci | grep -i nvidia# 查看驱动版本sudo dpkg --list | grep nvidia-*或者 ubuntu-drivers devices#查看显卡...

hc321
昨天
2
0
mysql密码重置

方法一: 在my.ini的[mysqld]字段加入: skip-grant-tables 重启mysql服务,这时的mysql不需要密码即可登录数据库 然后进入mysql mysql>use mysql; mysql>更新 update user set password=pas...

architect刘源源
昨天
6
1
SpringBoot + Mybatis 配置多数据源(Srping boot 二)

前置条件,你已经配置好spring boot+mybatis,可以参考之前的博客 实现逻辑通过注解+aop切面编程来动态更新datasource 第一步,配置多个DataSource server: port: 8080freezing: ...

小海bug
昨天
14
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部