Linux-Mysql 日志

文章目录

        • (一)二进制日志
        • (二)错误日志
        • (三)慢查询日志

此处主要记录关于常用日志的作用和用法

(一)二进制日志

主要用于数据备份
1)登入数据库,查看二进制日志是否打开 ,默认是OFF状态

show variables like '%log_bin%' 

2)进入配置文件

vim /etc/my.cnf

添加以下参数

log-bin=mysql-bin
server_id=2 #id必须唯一
binlog_format=ROW
expire_logs_days=30 #日志保留30天

3)重启数据库

systemctl restart mysqld 

4)登入数据库,此时二进制日志被打开,为ON状态

show variables like '%log_bin%' 

5)查看所有二进制日志文件

show binary logs   

查看当前所用的日志

show master status

6)查看二进制日志文件存放路径

show variables like '%log_bin%'    

7)进入二进制日志文件的存放位置

cd  路径 #如:cd /var/lib/mysql  

8)查看mysql二进制日志, mysqlbinlog 专用查看mysql二进制日志的命令

mysqlbinlog --no-defaults --base64-output=decode-rows -v  二进制日志文件名

如:mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000001
9)在mysql中删掉小于指定序号的二进制日志文件

purge master logs to 'mysql-bin.000006'  

在mysql中删掉小于指定时间点的二进制日志文件的内容

purge master logs before '20221031'

10)刷新数据库日志,每次刷新都会生成新的日志文件

flush logs
(二)错误日志

记录错误执行语句
1)查看错误日志文件所在路径

show variables like 'log_error' 

2)根据路径,查看错误日志文件

cat /var/log/mysqld.log   
(三)慢查询日志

记录执行慢的语句
1)查看慢查询日志相关信息,默认慢查询日志为关闭

show variables like '%slow%'    

2)打开慢查询日志

set global slow_query_log='ON'  

3)若出现文件权限不够

chmod -R 777 文件路径   #如 chmod -R 777 /var/lib/mysql/localhost-slow.log

4) 查看日志内容

cat 文件路径  #如 cat /var/lib/mysql/localhost-slow.log   

5)设置慢查询条件
在 my.cnf 配置文件中有 long_query_time=n,表示超出n秒会被认为是慢查询语句,没有就默认为10秒。

你可能感兴趣的:(Linux-Mysql 日志)