测试出现了BUG,查看了下应用程序打印的日志,发现有一个大问题,就是前一天的数据还正确,第二天的数据就出现了错误,唯一的可能是有人在这期间直接更新了数据库,而正常情况下数据库的每次更新都需要程序将一些统计数据发送给另外一个部门,结果第二天程序发送的数据出现了异常。我怀疑是有人用update语句直接update了数据库。这是按照推理来的,但是又没有足够的证据,因为mysql没有开启日志功能。这个问题又不能重现,在应用程序中找BUG很困难,那就为mysql加上更新日志功能吧!百度下,mysql的日志分为错误日志、查询日志、慢查询日志、更新日志和二进制日志,哈哈哈,还真有我想要到日志。查看方法,在windows下需要修改mysql安装目录到my.ini文件,在linux下需要修改etc/my.cnf文件,找到my.cnf文件,用vi打开,里面有一个注释了的log-update ,在其下面加上一行,为其配置路径,然后保存。然后到mysql到安装目录的bin目录下执行两个命令,就是重启mysql,,我的mysql是源文件安装的,要是用rpm安装的还是百度下其对应到重启命令吧。
# mysqladmin -u root -p shutdown 然后输入mysql的密码
# mysqld_safe –user=root &然后直接运行个update语句,看看设置到那个路径下是不是有日志文件了呢
查看日志文件的命令是
mysqlbinlog update.000001