MyCATApache / Mycat-Server

GNU General Public License v2.0
9.5k stars 3.85k forks source link

mysql连接后端连接vertica数据库报错。 #119

Open yytangsicheng opened 9 years ago

yytangsicheng commented 9 years ago

mycat后端连接的是vertica数据。通过mysql客户端以后,可以正常的插入数据。 但是在java代码里面通过jdbc的方式插入程序报错。 java代码如下:

Class.forName("com.vertica.jdbc.Driver") ; Class.forName("com.mysql.jdbc.Driver") ; Connection con = DriverManager.getConnection(mycatUrl, mycatUser, mycatPW); Statement stmt = con.createStatement(); stmt.execute( "insert into tablea(name) values('myname')" );

my.log的日志如下:

01/27 17:26:35.074 INFO $_NIOREACTOR-2-RW -ServerConnection [id=162, schema=realtimedata, host=113.106.251.85, user=realtime_mycat,txIsolation=3, autocommit=true, schema=realtimedata]'realtime_mycat' login success 01/27 17:26:35.080 DEBUG $_NIOREACTOR-2-RW -ServerConnection [id=162, schema=test, host=127.0.0.1, user=test,txIsolation=3, autocommit=true, schema=test]/* mysql-connector-java-5.1.34 ( Revision: jess.balint@oracle.com-20141014163213-wqbwpf1ok2kvo1om ) _/SHOW VARIABLES WHERE Variable_name ='language' OR Variable_name = 'net_write_timeout' OR Variable_name = 'interactive_timeout' OR Variable_name = 'wait_timeout' OR Variable_name = 'character_set_client' OR Variable_name = 'character_set_connection' OR Variable_name = 'character_set' OR Variable_name = 'character_set_server' OR Variable_name = 'tx_isolation' OR Variable_name = 'transaction_isolation' OR Variable_name = 'character_set_results' OR Variable_name = 'timezone' OR Variable_name = 'time_zone' OR Variable_name = 'system_time_zone' OR Variable_name = 'lower_case_table_names' OR Variable_name = 'max_allowed_packet' OR Variable_name = 'net_buffer_length' OR Variable_name = 'sql_mode' OR Variable_name = 'query_cache_type' OR Variable_name = 'query_cache_size' OR Variable_name = 'license' OR Variable_name = 'init_connect' 01/27 17:26:35.080 DEBUG $_NIOREACTOR-2-RW -ServerConnection [id=162, schema=realtimedata, host=113.106.251.85, user=realtimemycat,txIsolation=3, autocommit=true, schema=realtimedata]/ mysql-connector-java-5.1.34 ( Revision: jess.balint@oracle.com-20141014163213-wqbwpf1ok2kvo1om ) _/SHOW VARIABLES WHERE Variable_name ='language' OR Variable_name = 'net_write_timeout' OR Variable_name = 'interactive_timeout' OR Variable_name = 'wait_timeout' OR Variable_name = 'character_set_client' OR Variable_name = 'character_set_connection' OR Variable_name = 'character_set' OR Variable_name = 'character_set_server' OR Variable_name = 'tx_isolation' OR Variable_name = 'transaction_isolation' OR Variable_name = 'character_set_results' OR Variable_name = 'timezone' OR Variable_name = 'time_zone' OR Variable_name = 'system_time_zone' OR Variable_name = 'lower_case_table_names' OR Variable_name = 'max_allowed_packet' OR Variable_name = 'net_buffer_length' OR Variable_name = 'sql_mode' OR Variable_name = 'query_cache_type' OR Variable_name = 'query_cache_size' OR Variable_name = 'license' OR Variable_name = 'init_connect', route={ 1 -> realtimevertica{/ mysql-connector-java-5.1.34 ( Revision: jess.balint@oracle.com-20141014163213-wqbwpf1ok2kvo1om ) */SHOW VARIABLES WHERE Variable_name ='language' OR Variable_name = 'net_write_timeout' OR Variable_name = 'interactive_timeout' OR Variable_name = 'wait_timeout' OR Variable_name = 'character_set_client' OR Variable_name = 'character_set_connection' OR Variable_name = 'character_set' OR Variable_name = 'character_set_server' OR Variable_name = 'tx_isolation' OR Variable_name = 'transaction_isolation' OR Variable_name = 'character_set_results' OR Variable_name = 'timezone' OR Variable_name = 'time_zone' OR Variable_name = 'system_time_zone' OR Variable_name = 'lower_case_table_names' OR Variable_name = 'max_allowed_packet' OR Variable_name = 'net_buffer_length' OR Variable_name = 'sql_mode' OR Variable_name = 'query_cache_type' OR Variable_name = 'query_cache_size' OR Variable_name = 'license' OR Variable_name = 'init_connect'} } rrs 01/27 17:26:35.081 DEBUG $_NIOREACTOR-2-RW -select read source host_mastar_realtimedata for dataHost:realtime_vertica_db 01/27 17:26:35.085 WARN $_NIOREACTOR-2-RW -execute sql err : errno:4856 [Vertica]VJDBC ERROR: Syntax error at or near "WHERE" con:JDBCConnection [autocommit=true, txIsolation=0, running=false, borrowed=true, id=0, host=183.61.2.158, port=5433] 01/27 17:26:35.085 DEBUG $_NIOREACTOR-2-RW -release connection JDBCConnection [autocommit=true, txIsolation=0, running=false, borrowed=true, id=0, host=183.61.2.158, port=5433] 01/27 17:26:35.085 DEBUG $_NIOREACTOR-2-RW -release channel JDBCConnection [autocommit=true, txIsolation=0, running=false, borrowed=true, id=0, host=183.61.2.158, port=5433] 01/27 17:26:35.095 INFO $_NIOREACTOR-2-RW -close connection,reason:stream closed ,ServerConnection [id=162, schema=realtimedata, host=113.106.251.85, user=realtime_mycat,txIsolation=3, autocommit=true, schema=realtimedata] 01/27 17:26:35.096 DEBUG $_NIOREACTOR-2-RW -ServerConnection [id=162, schema=realtimedata, host=113.106.251.85, user=realtime_mycat,txIsolation=3, autocommit=true, schema=realtimedata] socket key canceled 01/27 17:31:49.405 INFO $_NIOREACTOR-3-RW -ServerConnection [id=163, schema=realtimedata, host=183.61.2.158, user=realtime_mycat,txIsolation=3, autocommit=true, schema=realtimedata]'realtime_mycat' login success 01/27 17:31:49.407 DEBUG $_NIOREACTOR-3-RW -ServerConnection [id=163, schema=realtimedata, host=183.61.2.158, user=realtime_mycat,txIsolation=3, autocommit=true, schema=realtimedata]show databases 01/27 17:31:49.414 DEBUG $_NIOREACTOR-3-RW -ServerConnection [id=163, schema=realtimedata, host=183.61.2.158, user=realtime_mycat,txIsolation=3, autocommit=true, schema=realtimedata]show tables 01/27 17:31:49.417 DEBUG $_NIOREACTOR-3-RW -ServerConnection [id=163, schema=realtimedata, host=183.61.2.158, user=realtime_mycat,txIsolation=3, autocommit=true, schema=realtimedata]select @@version_comment limit 1

yytangsicheng commented 9 years ago

关键的一段应该是; 01/27 17:26:35.085 WARN $_NIOREACTOR-2-RW -execute sql err : errno:4856 [Vertica]VJDBC ERROR: Syntax error at or near "WHERE" con:JDBCConnection [autocommit=true, txIsolation=0, running=false, borrowed=true, id=0, host=183.61.2.158, port=5433]

linzhiqiang0514 commented 9 years ago

后续是否有继续分析?具体的原因是什么?