xingwenge / canal-php

Alibaba mysql database binlog incremental subscription & consumer components Canal's php client[阿里巴巴mysql数据库binlog的增量订阅&消费组件 Canal 的 php 客户端 ] https://github.com/alibaba/canal
385 stars 67 forks source link

unpack(): Type N: not enough input, need 4, have 0 #20

Open codezm opened 4 years ago

codezm commented 4 years ago

报错信息在 canal-php/src/adapter/clue/CanalConnector.php on line 29 我尝试打印 $data 变量,值为 ""。

当配置 canal 账户密码时有此错误提示。 $client->checkValid('canal', 'canal');

canal.properties 配置文件:

canal.user = canal
canal.passwd = E3619321C1A937C46A0D8BD1DAC39F93B27D4458

感谢答复~

codezm commented 4 years ago

对应 server 端错误信息:

2020-11-18 15:45:55.445 [New I/O server worker #4-4] ERROR c.a.otter.canal.server.netty.handler.SessionHandler - something goes wrong with channel:[id: 0x0ce74db1, /172.17.0.1:37894 => /172.17.0.2:11111], exception=java.lang.IllegalArgumentException: illegal hex-string: canal
    at com.alibaba.otter.canal.protocol.SecurityUtil.hexStr2Bytes(SecurityUtil.java:237)
    at com.alibaba.otter.canal.server.embedded.CanalServerWithEmbedded.auth(CanalServerWithEmbedded.java:126)
    at com.alibaba.otter.canal.server.netty.handler.ClientAuthenticationHandler.messageReceived(ClientAuthenticationHandler.java:63)
    at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:302)
    at org.jboss.netty.handler.codec.replay.ReplayingDecoder.unfoldAndfireMessageReceived(ReplayingDecoder.java:526)
    at org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:507)
    at org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:444)
    at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:274)
    at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261)
    at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:350)
    at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:281)
    at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:201)
    at org.jboss.netty.util.internal.IoWorkerRunnable.run(IoWorkerRunnable.java:46)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

php exception: Socket operation failed: No error information

canal-server version: v1.1.4