怎么开启mysql日志功能

怎么开启mysql日志功能,第1张

1)怎么查看mysql是否启用了日志

mysql>show variables like 'log_bin'

2)怎样知道当前的日志

mysql>show master status

3)如何查看当前的二进制日志,可以使用mysqlbinlog的的工具,命令如下:

shell>mysqlbinlog mail-bin.000001(要写绝对问题路径 d://)

或者shell>mysqlbinlog mail-bin.000001 | tail

4)mysql有以下几种日志:

错误日志:    

-log-err

查询日志:    

-log

慢查询日志:   

-log-slow-queries

更新日志:     

-log-update

二进制日志: 

-log-bin

在mysql的安装目录下,打开my.ini,在后面加上上面的参数,保存后重启mysql服务就行了。

例如:

#Enter a name for the error

log file.   Otherwise a default

name will be used.

log-error=err.log

#Enter a name for the query

log file. Otherwise a default name will be used.

#log=

#Enter a name for the slow

query log file. Otherwise a default name will be used.

#log-slow-queries=

#Enter a name for the update

log file. Otherwise a default name will be used.

#log-update=

#Enter a name for the binary

log. Otherwise a default name will be used.

#log-bin=

上面只开启了错误日志,要开其他的日志就把前面的“#”去掉。

long_query_time =2--

这里设置慢日志的最大实现是指执行超过多久的sql会被log下来,这里是2秒

log-slow-queries=slowqueris.log --将查询返回较慢的语句进行记录,这里设置慢日志的名称

log-queries-not-using-indexes

= nouseindex.log --就是字面意思,log下来没有使用索引的query

5)下面是配置日志的几种方式,不一定全都要配置,请根据自身需求选择性配置

log=mylog.log

--对所有执行语句进行记录

log-error=log-error.log

log=log-query.log

log-queries-not-using-indexes

log-warnings=2

log-slow-queries=log-slow-query.log

log-update=log-update.log

long_query_time=2

1.找到my.ini文件

(方法:先到mysql安装目录找my.ini文件如果此安装目录没有找到该文件,则此文件一般在C盘下的ProgramData文件夹中,此文件夹为隐藏文件夹需要直接查找 C:\ProgramData\MySQL\MySQL Server 5.7\)然后打开my.ini文件

(在此文档里找到[mysqld]标签,并且在下面加上log-xfdhb=xfdhbary-log这句话

如[mysqld]

log-xfdhb=xfdhbary-log

(说明:log-xfdhb *** 作符命令为开启日志文件,因为mysql默认的是关闭日志,然后xfdhbary-log为产生日志文件的文件名,此文件在C:\ProgramData\MySQL\MySQL Server 5.7\Data下面可以看到 xfdhbary-log.000001文件这就是产生的日志二进制文件)

xfdhbary-log.000001文件这就是产生的日志二进制文件

2.日志文件已经开启下面进行实验,

建立一个新表product,kkdmt添加记录,这时在navicat里查看日志它会显示建表和添加数据的记录,时间

注意要记住建表时间和添加记录后的时间

打开命令提示符,用cd找到mysql安装目录后,

输入mysqlxfdhblog “C:\ProgramData\MySQL\MySQL Server 5.7\Data\xfdhbary-log.000001” --start-datetime=“2018-11-05 18:00:04.531” --stop-datetime=“2018-11-05 18:01:10.125” |mysql -u root -p

就可以恢复删除的数据了

注意:slddn误删一条数据,利用二进制日志恢复的时候你需要寻找的是 创建数据的那个节点(时间),而并非你删除数据的那个节点(时间)

slddn回滚数据,回滚到删数据之前的数据库状态(只执行了stop-position 或者stop-datetime),那么在stop-position之后所有的数据库 *** 作都将丢失所以你需要

start-position stop-position 回滚单条被删数据

(start-datetime为开始恢复的时间,stop-datetime为结束恢复的时间)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7338895.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存