1. 数据库中标的命名,mybatis会给你全部转成驼峰命名,这样就会发现找不到数据库的表了。比如下面的,我在本地运行时ok, 表名称是t_blogtype,但是放到服务器就报错说找不到表。
2. 本地运行正常的项目没想到上线出问题,是一天sql语句的语法问题,线上的mysql是5.7版本,
看到这个就说明有sql语句报错,然后往上找最近的sql,然后到线上的mysql运行一下发型语法不对。坑了我一天,一直以为是内存不够的问题,搞得昨天晚上买了个阿里服务器。2核4G, 只要720一年,给个阿里云的链接吧:
https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=bs6fjq3w
现在阿里也启动不来,然后我就灰常仔细的看这些debug信息,突然感觉上图这里有的怪异。
3.控制台的debug信息不方便看,把他输出到文件,可以区分debug, error, 配置如下
log4j.rootLogger=DEBUG, Console ,DFile ,EFILE
#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
log4j.logger.java.sql.ResultSet=INFO
log4j.logger.org.apache=INFO
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
#DEBUGFile
log4j.appender.DFile = org.apache.log4j.FileAppender
log4j.appender.DFile.File = D://logfile//DEBUG.log
log4j.appender.DFile.layout = org.apache.log4j.PatternLayout
log4j.appender.DFile.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n
log4j.appender.DFile.Threshold = DEBUG
#ERRORFile
log4j.appender.EFILE = org.apache.log4j.FileAppender
log4j.appender.EFILE.File = D://logfile//ERROR.log
log4j.appender.EFILE.layout = org.apache.log4j.PatternLayout
log4j.appender.EFILE.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n
log4j.appender.EFILE.Threshold = ERROR