开发者社区> 问答> 正文

安装完oceanbase数据库logproxy后报错,图片中问题怎么回事?

安装完oceanbase数据库logproxy后报错,图片中问题怎么回事?
Failed to query observer:Table oceanbase.__all_virtual_server_clog_stat' doesn't exist, unexpected column count: 0
我看系统里的确没这个表,这个是什么时候初始化的啊,我该怎么把他补上呢?我没安装obcdc,直接安装的oblogproxy,会有问题么?

展开
收起
曹凯1211 2023-08-09 10:14:31 106 0
来自:OceanBase
1 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在OceanBase数据库中,logproxy 是用于收集和传输 binlog 的组件,它依赖于一些系统表和视图来获取相关的元数据信息。根据你提供的错误信息,似乎缺少了 oceanbase.__all_virtual_server_clog_stat 这个表。

    这个表是在 OceanBase 数据库启动时自动创建的,并且提供了有关 clog(commit log)的统计信息。如果该表未正确创建,可能是由于安装或配置中出现了某些问题。

    为了解决这个问题,你可以尝试以下步骤:

    1. 确保 OceanBase 数据库已经正确地启动。确认没有遇到任何启动错误或异常信息。

    2. 检查日志:查看 OceanBase 数据库的日志文件,特别是启动过程中的日志,以查找任何与表 oceanbase.__all_virtual_server_clog_stat 相关的错误或异常信息。

    3. 执行修复命令:如果确实缺少了 oceanbase.__all_virtual_server_clog_stat 表,你可以尝试执行下面的 SQL 命令来尝试修复:

      use oceanbase;
      CREATE TABLE __all_virtual_server_clog_stat (
        svr_ip varchar(128) NOT NULL,
        svr_port int NOT NULL,
        partition_idx bigint NOT NULL,
        partition_cnt bigint NOT NULL,
        max_flushed_log_ts timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
        total_log_count bigint NOT NULL DEFAULT 0,
        total_log_size bigint NOT NULL DEFAULT 0,
        PRIMARY KEY (svr_ip, svr_port, partition_idx)
      );
      

      确保使用的是 oceanbase 数据库,并执行上述 SQL 命令来手动创建缺失的表。

    4. 重新启动 logproxy:在完成上述步骤后,尝试重新启动 logproxy 组件,并查看是否仍然报错。如果一切正常,logproxy 应该能够正常启动并收集 binlog。

    关于你提到的没有安装 obcdc,直接安装 oblogproxy 是否会有问题,oblogproxy 是独立的组件,并不依赖于 obcdc。因此,你可以直接安装和使用 oblogproxy,而不会因为没有安装 obcdc 而出现问题。

    但需要注意的是,oblogproxy 和 obcdc 是两个不同的组件,它们的功能和用途也不完全相同。如果你需要进行 CDC(Change Data Capture)任务或者其他与 binlog 相关的操作,那么安装和配置 obcdc 可能更加适合你的需求。请根据具体的业务需求和使用场景来选择适合的组件。

    2023-08-09 13:34:53
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
蚂蚁OceanBase数据库团队,用于OceanBase技术原理、运维经验和案例分享、对外交流。
问答排行榜
最热
最新

相关电子书

更多
DTCC 2022大会集锦《云原生一站式数据库技术与实践》 立即下载
阿里云瑶池数据库精要2022版 立即下载
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载