java实时监听mysql_java实时监控mysql数据库变化

对于二次开发来说,很大一部分就找找文件和找数据库的变化情况

对于数据库变化。还没有发现比较好用的监控数据库变化监控软件。

今天,我就给大家介绍一个如何使用mysql自带的功能监控数据库变化

1、打开数据库配置文件my.ini (一般在数据库安装目录)(D:\MYSQL)

2、在数据库的最后一行添加

log=log.txt

代码

3、重启mysql数据库

4、去数据库数据目录 我的是(D:\MYSQL\data) 你会发现多了一个log.txt文件

我的是在C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.5\data

测试:

1、对数据库操作

2、查看log.txt文件内容 如果发现有变化说明你就可以监控到mysql数据库的变化

数据库的查询 删除 更新 插入都可以查到

希望本篇文章可以帮助大家更快的二次开发 ^_^

日志文件类型概述:

1.

错误日志 记录启动、运行或停止mysqld时出现的问题。

My.ini配置信息:

#Enter a name for the error log file. Otherwise a default name will be used.

#log-error=d:/mysql_log_err.txt

2.

查询日志 记录建立的客户端连接和执行的语句。

My.ini配置信息:

#Enter a name for the query log file. Otherwise a default name will be used.

#log=d:/mysql_log.txt

3.

更新日志 记录更改数据的语句。不赞成使用该日志。

My.ini配置信息:

#Enter a name for the update log file. Otherwise a default name will be used.

#log-update=d:/mysql_log_update.txt

4.

二进制日志 记录所有更改数据的语句。还用于复制。

My.ini配置信息:

#Enter a name for the binary log. Otherwise a default name will be used.

#log-bin=d:/mysql_log_bin

5.

慢日志 记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询。

My.ini配置信息:

#Enter a name for the slow query log file. Otherwise a default name will be used.

#long_query_time =1

#log-slow-queries= d:/mysql_log_slow.txt

在linux下:

Sql代码

1. # 在[mysqld] 中输入

2. #log

3. log-error=/usr/local/mysql/log/error.log

4. log=/usr/local/mysql/log/mysql.log

5. long_query_time=2

6. log-slow-queries= /usr/local/mysql/log/slowquery.log

# 在[mysqld] 中输入 #log log-error=/usr/local/mysql/log/error.log log=/usr/local/mysql/log/mysql.log long_query_time=2 log-slow-queries= /usr/local/mysql/log/slowquery.log

windows下:

Sql代码

1. # 在[mysqld] 中输入

2. #log

3. log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log"

4. log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log"

5. long_query_time=2

6. log-slow-queries= "E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"

# 在[mysqld] 中输入 #log log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log" log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log" long_query_time=2 log-slow-queries= "E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"

开启慢查询

long_query_time =2 --是指执行超过多久的sql会被log下来,这里是2秒

log-slow-queries= /usr/local/mysql/log/slowquery.log --将查询返回较慢的语句进行记录

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

log=mylog.log --对所有执行语句进行记录

日志的存放:默认情况下,当开启时,所有的日志都存放在DataDir目录下. 如果没有指定名称的话,它会以后主机名为名称. 如主机名为songcomputer,则相关就的日志为songcomputer.log文件.

Mysql日志的关闭与开启:

使用以下命令查看是否启用了日志

mysql>show variableslike'log_%’;

7d5d03a6f963993304895b2534920b20.png

凡Value值为OFF的表示未开启服务,若要开启只需要将上的my.ini配置信息写入(my.ini为mysql安装目录下),然后去掉前面的“#”

号,再重启mysql服务。OK,现在会看到指定的日志文件已创建。相反地,若要停止mysql日志服务,只需要将my.ini中对应的配置信息去掉即

可。

>>>>相应的使用慢日志查询

手动的去读取慢日志以及修改慢日志的时间

show variables like 'long%'

会得到慢日志的时间

进行设置慢日志的值

set long_query_time=2;

侧重的二进制文件

二进制日志:

从概述中我可以看到my.ini配置信息的log-bin没有指定文件扩展名,这是因为即使你指定上扩展名它也不使用。当mysql创建二进制日志文件

时,首先创建一个以“mysql_log_bin”为名称,以“.index”为后缀的文件;再创建一个以“mysql_log_bin”为名称,以

“.000001”为后缀的文件。当mysql服务重新启动一次以“.000001”为后缀的文件会增加一个,并且后缀名加1递增;如果日志长度超过了

max_binlog_size的上限(默认是1G)也会创建一个新的日志文件;使用flush

logs(mysql命令符)或者执行mysqladmin –u –p flush-logs(windows命令提示符)也会创建一个新的日志文件。

既然写入的都是二进制数据,用记事本打开文件是看不到正常数据的,那怎么查看呢?

使用BIN目录下mysqlbinlog命令,如:

Bin>mysqlbinlog d:/mysql_log/mysql_bin.000001

Bin>mysqlbinlog d:/mysql_log/mysql_bin.000002

Bin>mysqlbinlog d:/mysql_log/mysql_bin.000003

Bin>mysqlbinlog d:/mysql_log/mysql_bin.000004

Bin>mysqlbinlog d:/mysql_log/mysql_bin.000005

使用SQL语句也可查看mysql创建的二进制的文件目录:

Mysql> show master logs;

查看当前二进制文件状态:

mysql> show master status;

至于准确的看懂日志文件,还需要读者仔细阅读,深深体会,这里就不再奥述了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/551776.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python中cmd如何切换盘_redis 中如何切换db

redis 中如何切换dbredis数据库个数是可以配置的,默认为16个如上图我们如何切换呢?我在redis客户端查询如下 通过用select N 你想要的数据库 就能切到对应的数据库去了每个数据库的key值不会冲突,是分开存储的java代码中如何切换redis db&…

mysql max字符串报错_mysql [Warning] max_join_size报错问题解决办法

文章介绍了关于mysql [Warning] max_join_size报错问题解决办法,有需要的同学看看。100716 06:32:45 d started100716 6:32:45 [Warning] option max_join_size: unsigned value 18446744073709551615 adjusted to 4294967295100716 6:32:45 [Warning] option max_join_size: u…

jdbc odbc java mysql数据库连接_Java数据库连接之配置ODBC数据源

java使用JDBC-ODBC桥接连接SQLServer数据库需要配置ODBC数据源,配置步骤如下:1.进入控制面板,找到管理工具2.看到ODBC数据源,有64位和32位的,如果你的数据库是64位的就要选择64位的,32位的数据库也要选择对…

kali mysql停止服务器_从零开始:手把手教你黑客入门攻破服务器并获取ROOT权限...

有许多人对神秘的黑客一直感兴趣,却苦于网上资料繁杂,无法入门,在学黑客之前,你要知道什么是黑客,黑客就是那些对计算机有着强烈探索欲的人,一个真正的黑客,必须要至少掌握一门编程技术和熟悉系…

堆排序不稳定的例子_【译】Python中的堆排序

作者:Olivera Popović翻译:老齐介绍堆排序是高效排序算法的另一个例子,它的主要优点是,无论输入数据如何,它的最坏情况运行时间都是O(n*logn)。顾名思义,堆排序在很大程度上依赖于堆数据结构——优先级队列…

安卓手机备份_安卓手机数据备份与恢复方法汇总和操作详解

世界那么大,谢谢你来看我!!关注我你就是个网络、电脑、手机小达人每次使用电脑时,我们都会自觉的将重要的文件保存好并且备份起来防止丢失。那同样的,我们在使用手机时,也要养成手机备份的好习惯。今天就来…

mysql索引的使用及优化方法_MySQL中索引和优化的用法总结

1、什么是数据库中的索引?索引有什么作用?引入索引的目的是为了加快查询速度。如果数据量很大,大的查询要从硬盘加载数据到内存当中。2、InnoDB中的索引原理是怎么样的?InnoDB是MySQL的默认存储引擎,InnoDB有两种索引:…

苹果屏幕上的小圆点_苹果或明年部署miniLED屏幕 最早用在Macbook上

中关村在线消息:苹果将举行WWDC 2020开发者大会即将召开,昨日,业内人士手机晶片达人透露:“苹果明年即将在Macbook上与iPad导入Mini LED产品,效果非常非常的好。相关供应链都开始动了起来。”苹果明年即将在Macbook上与…

mysql默认字符集和排序_MySQL字符集和排序规则

MySQL在创建数据库是,需要设置数据库的字符集和排序规则,如图所示:我觉得这里有必要解释下字符集和排序规则这两个概念。字符集说到字符集,需要先提下字符、字符集和字符编码这几个词的含义。字符(Character)是各种文字和符号的总…

图形驱动程序和显卡驱动什么区别_以后你的手机也需要单独安装显卡驱动程序了...

在桌面平台制造商通常会定期发布显卡驱动优化和提高性能,对于多数用户来说安装显卡驱动应该是很平常的事。不过在智能手机方面还不需要安装额外的驱动程序,因为制造商通常会通过每年的安卓系统更新来发布新版驱动。有趣的是从明年开始我们的智能手机也要…

有向加权图 最大弱连通分支_开盘引来大涨,当下股市最大的风险是它?

何为昨天的大涨定性?昨天的大涨,上午的加权量能水平达到了2921亿元,一个非常健康的温和放量状态;下午的加权量能水平快速下降到2242亿元的水平,这是略高于五日均量的量能水平;大幅高开,集合竞价…

axure文本框提示文字_Axure教程:一个中继器实现密码验证

本文给大家介绍用一个中继器实现axure登录时账号密码验证效果,一起来看看~实现效果如下图:工具/原料:账号文本框密码文本框登录按钮中继器记录密码的文本标签(隐藏)提示框(隐藏)验证按钮(隐藏)方法/步骤步骤1设置中继器:新增列acc…

深度学习 autoencoder_笔记:李淼博士-基于模仿学习的机器人抓取与操控

说明:本文是Techbeat平台上李淼博士的讲座:“基于模仿学习的机器人抓取与操控”的总结笔记。原视频:TechBeat - 让AI大有可为​www.techbeat.net视频介绍:近四十年来,研究人员对机器人抓取的研究逐渐深入,涉…

linux临时挂载别的文件目录_linux基础05:linux系统目录有哪些?命令行界面如何切换目录?...

我们安装好linux系统后,linux系统也会像windows系统一样,自动生成很多的文件和目录,这些目录都包含了不同的含义。下面,我们就来介绍一下这些目录都代表着什么?以及,在命令行界面,我们如何在不同…

抽象方法可以有方法体_什么方法可以祛斑?祛斑的方法有哪些?

现在是一个看脸的时代,可能不那么准确,但是也说明了人们对于美好脸蛋的追求。完美的脸蛋必定是光滑白皙没有瑕疵的,而有了色斑就会损害整个人的颜值。祛斑的方法有哪些?若是您正深受长斑的烦恼,小编专门寻找了一些简单有效的祛斑…

炫界 (978) -(建工发现应用克隆漏)_除了DMA,这些漏损点检测与漏损区域识别技术你知道么?...

漏损问题在给水管网中是普遍存在且难以避免的。据《2018年城市供水统计年鉴》显示,载入年鉴的各城市在2017年的管网漏损总量超过60亿m3,平均漏损率为14.56%,这与“水十条”明确规定的控漏目标相比仍存有差距。与此同时,居高不下的…

go语言 mysql卡死_一次mysql死锁的排查过程-Go语言中文社区

一次mysql死锁的排查过程一、背景17号晚上要吃饭了,看旁边的妹子和佐哥还在调代码,就问了下什么问题啊,还在弄,妹子说,在测试环境测试给用户并发发送卡券时,出现了死锁,但看代码没有死锁&#x…

怎么格式化电脑_U盘格式化后数据能恢复吗?人人都能学会的恢复方法!

获取专业数据恢复软件:专注硬盘U盘误删文件数据恢复软件免费下载​dl-next.aunbox.cn数据恢复官网:嗨格式数据恢复大师官网 - 专业U盘/电脑/硬盘数据恢复软件_免费下载​huifu.hgs.cnU盘格式化后数据能恢复吗?U盘在我们生活中算是比较常用的数…

java 运算符_详解Java表达式与运算符

课程导言【变量的赋值与计算都离不开表达式,表达式的运算依赖于变量、常量和运算符。本节课讨论Java的表达式的构成、常量的定义、运算符的分类及应用。通过本课的学习你将掌握运用表达式和运算符完成变量赋值、条件判断、数学运算、逻辑运算等功能操作】在讲述课程…

将你一张表的值覆盖_精准度可达亚米级,山东“北斗一张网”向社会免费开放...

齐鲁晚报齐鲁壹点记者张阿凤通讯员苏彬8月21日,山东省北斗卫星导航定位基准站网(以下简称“北斗一张网”)推广应用座谈会在济南举行。“北斗一张网”自2019年8月建成后,现已免费向社会提供实时、动态、高精度的卫星导航定位基础服务,在自然资…