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

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

今天,我就给大家介绍一个如何使用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日志的关闭与开启:

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

  1. mysql>show variables like 'log_%’;
    

凡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创建的二进制的文件目录:

  1. Mysql> show master logs; 

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

  1. mysql> show master status;  

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

实时监控mysql数据库变化的更多相关文章

  1. java实时监控mysql数据库变化

    对于二次开发来说,很大一部分就找找文件和找数据库的变化情况 对于数据库变化.还没有发现比较好用的监控数据库变化监控软件. 今天,我就给大家介绍一个如何使用mysql自带的功能监控数据库变化 1.打开数 ...

  2. 160411、实时监控mysql数据库变化

    对于二次开发来说,很大一部分就找找文件和找数据库的变化情况 对于数据库变化.还没有发现比较好用的监控数据库变化监控软件. 今天,我就给大家介绍一个如何使用mysql自带的功能监控数据库变化 1.打开数 ...

  3. MySQL 之 MyTop实时监控MySQL

    CentOS下使用MyTop实时监控MySQL MyTop的项目页面为:http://jeremy.zawodny.com/mysql/mytop/ MyTop安装 安装依赖包  yum instal ...

  4. CentOS下使用MyTop实时监控MySQL

    CentOS下使用MyTop实时监控MySQL MyTop的项目页面为:http://jeremy.zawodny.com/mysql/mytop/ MyTop安装 $ yum -y install ...

  5. zabbix通过第三方插件percona监控mysql数据库

     zabbix通过第三方插件percona监控mysql数据库                                                                     ...

  6. zabbix利用自带的模板监控mysql数据库

    zabbix利用自带的模板监控mysql数据库 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 有些东西你不会的时候觉得它特别难,但是当你去做的时候就发现如此的简单~zabbix功能 ...

  7. zabbix3.4 监控mysql 数据库连接数

    zabbix3.4 监控mysql 数据库连接数具体监控配置待定,近期即将发布!

  8. centos 7中监控mysql 数据库脚本(监控端口)

    centos 7中监控mysql 数据库脚本(监控端口) 监控mysql数据库的方法如下: 1.监控端口 netstat -nltp |grep 3306 2.监控进程 ps -ef |grep 33 ...

  9. Cacti监控mysql数据库服务器实现过程

    Cacti监控mysql数据库服务器实现过程 2014-05-29      0个评论    来源:Cacti监控mysql数据库服务器实现过程   收藏    我要投稿 1 先在cacti服务器端安 ...

随机推荐

  1. Spring 实践 -AOP

    Spring 实践 标签: Java与设计模式 AOP引介 AOP(Aspect Oriented Programing)面向切面编程采用横向抽取机制,以取代传统的纵向继承体系的重复性代码(如性能监控 ...

  2. POJ 3468 A Simple Problem with Integers

    线段树的指针表示法. 代码还有待消化.. 代码里面多次用到了函数递归,感觉这次对递归又有了深一层的理解. #define LOCAL #include <iostream> #includ ...

  3. A1377. 楼房重建

    题目:http://www.tsinsen.com/A1377 题解:分块大法好.每块维护一个有序表,修改暴力修改,查询从前往后跳即可. 代码: #include<cstdio> #inc ...

  4. Hide/Show running Console

    http://stackoverflow.com/questions/3571627/show-hide-the-console-window-of-a-c-sharp-console-applica ...

  5. 【转】Qt多线程操作界面---在QThread更新QProgressBar

    #include <QApplication> #include <QThread> #include <QMainWindow> #include <QPr ...

  6. 关闭iptables(Centos)

    由于搭建了CDH-Hadoop,方便起见,事先关闭了防火墙: services iptables stop; chkconfig iptables off; services ip6tables st ...

  7. EIG集团简单介绍

    有朋友会问为什么要介绍EIG集团,他们是干什么的?与域名.主机.IDC行业资讯等有啥关系?EIG集团很牛逼么?带着这些疑问,简单的给大家做个介绍,希望能帮助大家了解这个IDC行业里面的“魔鬼”! EI ...

  8. 顶 兼容各种浏览器js折叠菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. 使用git自动将子工程发布到百度开放云上

    我的项目中包含多个子工程,如web工程.python工程等.我在项目的根目录下建立了git管理,因此如果使用git push只能把整个项目推送上去,但我只想推送web工程目录.因此,编写了cmd脚本如 ...

  10. 看看JavaScript中void(0)的含义

    JavaScript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值. void 操作符用法格式如下:1. javascript:void (expression)2. javascr ...