求助连接mycat报错

villainess_y 2018-08-16 05:27:29

写了个mycat连接pgsql的测试例子,mycat可以正常启动,但是连接一直报错。
mycat日志文件报错信息:
2018-08-16 17:10:31.212 ERROR [$_NIOREACTOR-15-RW] (io.mycat.net.FrontendConnection.loadDataInfileEnd(FrontendConnection.java:271)) - load data error
java.lang.NullPointerException
at io.mycat.server.handler.ServerLoadDataInfileHandler.end(ServerLoadDataInfileHandler.java:622) ~[Mycat-server-1.6-RELEASE.jar:?]
at io.mycat.net.FrontendConnection.loadDataInfileEnd(FrontendConnection.java:269) ~[Mycat-server-1.6-RELEASE.jar:?]
at io.mycat.net.FrontendConnection.rawHandle(FrontendConnection.java:469) ~[Mycat-server-1.6-RELEASE.jar:?]
at io.mycat.net.FrontendConnection.handle(FrontendConnection.java:460) ~[Mycat-server-1.6-RELEASE.jar:?]
at io.mycat.net.AbstractConnection.onReadData(AbstractConnection.java:321) ~[Mycat-server-1.6-RELEASE.jar:?]
at io.mycat.net.NIOSocketWR.asynRead(NIOSocketWR.java:190) ~[Mycat-server-1.6-RELEASE.jar:?]
at io.mycat.net.AbstractConnection.asynRead(AbstractConnection.java:273) ~[Mycat-server-1.6-RELEASE.jar:?]
at io.mycat.net.FrontendConnection.register(FrontendConnection.java:444) ~[Mycat-server-1.6-RELEASE.jar:?]
at io.mycat.net.NIOReactor$RW.register(NIOReactor.java:160) ~[Mycat-server-1.6-RELEASE.jar:?]
at io.mycat.net.NIOReactor$RW.run(NIOReactor.java:92) ~[Mycat-server-1.6-RELEASE.jar:?]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_151]
2018-08-16 17:10:32.424 INFO [Timer1]


...全文
2212 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
gomton 2020-05-28
  • 打赏
  • 举报
回复
我也碰到这个问题了,请问怎么解决的?
villainess_y 2018-08-16
  • 打赏
  • 举报
回复
schema.xml配置:
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">

<!--声明一个逻辑表,表名为TESTDB和server.xml对应-->
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100">
<!--指定实际表名为user_tb,分片规则与rule.xml里定义的名字一致-->
<table name="user_tb" primaryKey="id" autoIncrement="true" dataNode="node_db01, node_db02" rule="role1"/>
</schema>

<dataNode name="node_db01" dataHost="dataHost01" database="my_db"/>
<dataNode name="node_db02" dataHost="dataHost01" database="my_db02"/>

<!--声明数据库的连接地址,名称为dataHOst01,与dataNode中标签一致-->
<!--maxCon,minCon指定了连接数-->
<!--balance:
1. balance="0", 所有读操作都发送到当前可用的writeHost上。
2. balance="1",所有读操作都随机的发送到readHost。
3. balance="2",所有读操作都随机的在writeHost、readhost上分发。
-->
<!--writeType:
1. writeType="0", 所有写操作都发送到可用的writeHost上。
2. writeType="1",所有写操作都随机的发送到readHost。
3. writeType="2",所有写操作都随机的在writeHost、readhost分上发
。-->
<dataHost name="dataHost01" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="postgresql" dbDriver="native">
<heartbeat>select user</heartbeat>
<!-- postgresql专用-->

<writeHost host="hostM1" url="192.168.223.131:5432" user="dbuser" password="hand1234hand"/>
</dataHost>

</mycat:schema>



rule.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<!-- - - Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License. - You
may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0
- - Unless required by applicable law or agreed to in writing, software -
distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the
License for the specific language governing permissions and - limitations
under the License. -->
<!DOCTYPE mycat:rule SYSTEM "rule.dtd">
<mycat:rule xmlns:mycat="http://io.mycat/">
<!-- 指定表规则的名称, 以及分片的function-->
<tableRule name="role1">
<rule>
<columns>id</columns>
<algorithm>mod-long</algorithm>
</rule>
</tableRule>
<!-- 分片名称为mod-long, 为tableRule标签提供-->
<function name="mod-long" class="io.mycat.route.function.PartitionByMod">
<!-- 指定有几个节点,咱们有两个db02和db03,所以写2, 取模就是id%2 -->
<property name="count">2</property>
<property name="virtualBucketTimes">160</property>
</function>
</mycat:rule>

954

社区成员

发帖
与我相关
我的任务
社区描述
PostgreSQL相关内容讨论
sql数据库数据库架构 技术论坛(原bbs)
社区管理员
  • PostgreSQL社区
  • yang_z_1
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧