OA(Tomcat+MySQL)最近有些问题,周五请厂家的技术远程调试了一下。调试过程如下:

1.对OA数据库索引进行了优化;

2.修改数据库最小连接数,由原来的30改为5;

3.修改MySQL数据库参数,添加了 transaction-isolation = Read Committed 。

    因为调试的时候是工作时间,修改完成后没有重启数据库和应用。周六早上我重启了,可是始终重启失败,厂家的技术联系不上。只好自己进行解决了。

    回顾一下他修改的几个,第一二条都不会造成应用启动不了的情况,看来只有第三条了。查看了一下Tomcat的启动日志,发现是数据库连接不上,但数据库是正常启动的啊,可是为什么连接不上呢?

    将添加的参数注释掉,重启数据库,再启动应用,发现可以了。这是为什么呢?

    我突然想起当时为了做主从复制,将数据库开始了日志模式,那么会不会是这两个冲突呢?搜索了一下,看到了日志模式的格式与事务之前的一些关系 :

   MySQL数据库参数设置不当导致应用不能连接问题_参数

  日志模式默认为STATEMENT,而我这个数据库当时用的是默认的,看来是日志模式与事务级别之前有冲突。再次修改数据库配置文件,修改日志模式:

binlog_format=MIXED

transaction-isolation = Read Committed

重启数据库,再启动应用,没有任何问题了。