mysql-binlog-connector-java监听binlog日志不报错,却无法监听到日志的解决办法

    public static void test1() {
        final BinaryLogClient client = new BinaryLogClient("localhost", 3306, "root", "root");
        client.setBinlogFilename("mysql-bin.000001");
        client.setBinlogPosition(4);
        client.registerEventListener(new BinaryLogClient.EventListener() {

            public void onEvent(Event event) {
                System.out.println(event.toString()); 
            }
        }); 
        try {
            client.connect();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

 启动后

mysql-binlog-connector-java监听binlog日志不报错,却无法监听到日志的解决办法

对数据库进行操作为打印相关event。

下载源码,打断点发现

mysql-binlog-connector-java监听binlog日志不报错,却无法监听到日志的解决办法

mysql-binlog-connector-java监听binlog日志不报错,却无法监听到日志的解决办法

异常未打印,所以控制台没有任何输出。

查看errorPacket对象的errorMessage属性为:Misconfigured master - server_id was not set

即数据库的server-id未指定。

解决办法:修改my.cnf文件,在mysqld下添加server-id,重启数据库。问题解决

mysql-binlog-connector-java监听binlog日志不报错,却无法监听到日志的解决办法