環境:1臺amoeba3.0.4(讀寫分離) 兩個mysql5.6(主從)
問題1:客戶端navicat用sql陳述句查詢, 或者專案運行呼叫sql陳述句查詢,(執行結果是正確的)出現錯誤
navicat報錯資訊:
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '/*100,3), '%') AS `Percentage` FROM INFORMATION_SCHEMA.PROFILING WHERE QUERY_ID=' at line 1
查看logs/router.log
2017-07-31 16:12:10,679 ERROR route.AbstractQueryRouter - SELECT STATE AS `Status`, ROUND(SUM(DURATION),7) AS `Duration`, CONCAT(ROUND(SUM(DURATION)/*100,3), '%') AS `Percentage` FROM INFORMATION_SCHEMA.PROFILING WHERE QUERY_ID= GROUP BY STATE ORDER BY SEQ;
com.meidusa.amoeba.parser.ParseException: com.meidusa.amoeba.mysql.parser.sql.ParseException: Encountered "*" at line 1, column 92.
Was expecting one of:
"CASE" ...
"CAST" ...
"NULL" ...
"TRUE" ...
"FALSE" ...
"INTERVAL" ...
<INTEGER_LITERAL> ...
<FLOATING_POINT_LITERAL> ...
<IDENTIFIER> ...
<STRING_LITERAL> ...
<S_QUOTED_IDENTIFIER> ...
<S_COMMA_IDENTIFIER> ...
<S_PARAMETER_MARKER> ...
"(" ...
"`" ...
"+" ...
"-" ...
<IDENTIFIER> ...
"`" ...
<S_QUOTED_IDENTIFIER> ...
<S_COMMA_IDENTIFIER> ...
<IDENTIFIER> ...
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.doParse(MysqlParser.java:117)
at com.meidusa.amoeba.route.SqlBaseQueryRouter.parseStatement(SqlBaseQueryRouter.java:138)
at com.meidusa.amoeba.route.SqlBaseQueryRouter.evaluateTable(SqlBaseQueryRouter.java:50)
at com.meidusa.amoeba.route.SqlBaseQueryRouter.evaluateTable(SqlBaseQueryRouter.java:1)
at com.meidusa.amoeba.route.AbstractQueryRouter.evaluate(AbstractQueryRouter.java:136)
at com.meidusa.amoeba.route.AbstractQueryRouter.selectPool(AbstractQueryRouter.java:411)
at com.meidusa.amoeba.mysql.parser.MysqlQueryRouter.selectPool(MysqlQueryRouter.java:59)
at com.meidusa.amoeba.mysql.parser.MysqlQueryRouter.selectPool(MysqlQueryRouter.java:1)
at com.meidusa.amoeba.route.AbstractQueryRouter.doRoute(AbstractQueryRouter.java:111)
at com.meidusa.amoeba.mysql.handler.MySqlCommandDispatcher.handleQueryCommandMessage(MySqlCommandDispatcher.java:98)
at com.meidusa.amoeba.mysql.handler.MySqlCommandDispatcher$1.run(MySqlCommandDispatcher.java:242)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: com.meidusa.amoeba.mysql.parser.sql.ParseException: Encountered "*" at line 1, column 92.
Was expecting one of:
"CASE" ...
"CAST" ...
"NULL" ...
"TRUE" ...
"FALSE" ...
"INTERVAL" ...
<INTEGER_LITERAL> ...
<FLOATING_POINT_LITERAL> ...
<IDENTIFIER> ...
<STRING_LITERAL> ...
<S_QUOTED_IDENTIFIER> ...
<S_COMMA_IDENTIFIER> ...
<S_PARAMETER_MARKER> ...
"(" ...
"`" ...
"+" ...
"-" ...
<IDENTIFIER> ...
"`" ...
<S_QUOTED_IDENTIFIER> ...
<S_COMMA_IDENTIFIER> ...
<IDENTIFIER> ...
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.generateParseException(MysqlParser.java:5848)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.jj_consume_token(MysqlParser.java:5718)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLPrimaryExpression(MysqlParser.java:3305)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLUnaryExpression(MysqlParser.java:3106)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLMultiplicativeExpression(MysqlParser.java:3061)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLAddSubtractExpression(MysqlParser.java:2964)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLSimpleExpression(MysqlParser.java:2953)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLExpressionList(MysqlParser.java:2746)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.FunctionCall(MysqlParser.java:3359)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLPrimaryExpression(MysqlParser.java:3291)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLUnaryExpression(MysqlParser.java:3106)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLMultiplicativeExpression(MysqlParser.java:3025)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLAddSubtractExpression(MysqlParser.java:2964)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLSimpleExpression(MysqlParser.java:2953)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.OverloadedFunctionCall(MysqlParser.java:3452)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLPrimaryExpression(MysqlParser.java:3276)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLUnaryExpression(MysqlParser.java:3106)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLMultiplicativeExpression(MysqlParser.java:3025)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLAddSubtractExpression(MysqlParser.java:2964)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SQLSimpleExpression(MysqlParser.java:2953)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SelectItem(MysqlParser.java:2002)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SelectList(MysqlParser.java:1980)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SelectClause(MysqlParser.java:1943)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SubSelectStatement(MysqlParser.java:1734)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.FullSelectStatement(MysqlParser.java:1681)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.SelectQuery(MysqlParser.java:1309)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.parserInner(MysqlParser.java:355)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.parse(MysqlParser.java:268)
at com.meidusa.amoeba.mysql.parser.sql.MysqlParser.doParse(MysqlParser.java:114)
... 13 more
問題2:事件無法回滾
分析:在dos命令下做,查詢等操作,無此報錯資訊!!!難道是跟Navicat不兼容?跟我的專案不兼容?
請大神請求支援!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/61460.html
標籤:服務器
