---
title: OceanBase 数据库 V4.x 版本中为备租户设置日志恢复源时遇到 ERROR 1210 错误-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 OceanBase 数据库 V4.x 版本中为备租户设置日志恢复源时遇到 ERROR 1210 错误相关的常见问题和使用技巧，帮助您快速解决 OceanBase 数据库 V4.x 版本中为备租户设置日志恢复源时遇到 ERROR 1210 错误的难题。
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# OceanBase 数据库 V4.x 版本中为备租户设置日志恢复源时遇到 ERROR 1210 错误

更新时间：2026-05-18 06:56

适用版本： V4.0.x、V4.1.x、V4.2.x 内容类型：Troubleshoot  

本文主要介绍 OceanBase 数据库 V4.x 版本中使用 `alter system set log_restore_source ...` 为备租户设置日志恢复源时遇到 `ERROR 1210 (HY000): Incorrect arguments to get primary connection` 错误的问题排查方法和处理方法。

## 问题现象

在 OceanBase 数据库 V4.x 版本中使用 `alter system set log_restore_source ...` 为备租户设置日志恢复源时，遇到报错，信息如下：

![image001](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/knowledge-base/database/sql/20240429recover001.png)

## 问题的风险及影响

为备租户设置恢复源失败，导致当前备租户无法开启日志的持续同步。

## 适用版本

OceanBase 数据库 V4.1 及之后的版本。

## 问题原因

由于备租户在连接主租户或源端的备租户时，需要访问主租户或源端的备租户的部分系统视图，因此需要有一个访问视图专用用户具备这部分系统视图的查询权限。

根据错误信息可知，主租户中当前用于数据同步的用户缺少一些基本的权限。

详细信息参见：[设置日志恢复源](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000752028) 。

备租户需要访问的系统视图如下：

- GV$OB_LOG_STAT：用于获取主租户的机器列表、副本服务的日志流 LSN 范围、角色（是否是 Leader）等信息。
 - GV$OB_UNITS：查询主租户的所有 Unit 信息，获取副本状态、Zone 以及 Region 等信息，用于过滤、获取和维护租户机器连接等。
 - GV$OB_PARAMETERS: 用于查询主租户的 cluster_id、tenant_id 等服务必须的元信息。
 - DBA_OB_ACCESS_POINT: 用于获取访问入口信息。在主租户迁移复制、容灾等场景下，若访问入口发生变化，备租户可以自动感知，不需要用户手动修改。
 - DBA_OB_TENANTS：获取主租户的兼容模式。
 - DBA_OB_LS: 获取主租户的日志流列表以及日志流状态。
 - DBA_OB_LS_HISTORY: 获取主租户历史上存在过的日志流列表以及日志流状态。

## 解决方法及规避方式

- 解决方法：

     - MySQL 模式。

      通过数据库管理员 root 用户连接到该 MySQL 主租户，为该用户赋予权限。

      ```shell
      MySQL [(none)]> create user $user_name identified by $password;

      GRANT SELECT on oceanbase.DBA_OB_TENANTS to $user_name;
      GRANT SELECT on oceanbase.GV$OB_PARAMETERS to $user_name;
      GRANT SELECT on oceanbase.DBA_OB_ACCESS_POINT to $user_name;
      GRANT SELECT on oceanbase.GV$OB_LOG_STAT to $user_name;
      GRANT SELECT on oceanbase.GV$OB_UNITS to $user_name;
      GRANT SELECT on oceanbase.DBA_OB_LS to $user_name;
      GRANT SELECT on oceanbase.DBA_OB_LS_HISTORY to $user_name;

      ```

      或者直接将 OceanBase 数据库下所有表的 SELECT 权限授予该用户：

      ```shell
      MySQL [(none)]> GRANT SELECT ON oceanbase.* TO $user_name;

      ```
     - Oracle 模式。

      通过数据库管理员 SYS 用户连接到该 Oracle 主租户，为该用户赋予权限：

      ```shell
      obclient [SYS]> create user $user_name identified by $password;

      GRANT CONNECT to $user_name;
      GRANT SELECT on SYS.DBA_OB_TENANTS to $user_name;
      GRANT SELECT on SYS.GV$OB_PARAMETERS to $user_name;
      GRANT SELECT on SYS.DBA_OB_ACCESS_POINT to $user_name;
      GRANT SELECT on SYS.GV$OB_LOG_STAT to $user_name;
      GRANT SELECT on SYS.GV$OB_UNITS to $user_name;
      GRANT SELECT on SYS.DBA_OB_LS to $user_name;
      GRANT SELECT on SYS.DBA_OB_LS_HISTORY to $user_name;

      ```

OceanBase 数据库从 V4.2.2 版本开始新支持系统默认角 `STANDBY_REPLICATION`，该角色默认包含 `CREATE SESSION` 系统权限以及对以下视图的查询权限：

- GV$OB_LOG_STAT
 - GV$OB_UNITS
 - GV$OB_PARAMETERS
 - DBA_OB_ACCESS_POINT
 - DBA_OB_TENANTS
 - DBA_OB_LS
 - DBA_OB_LS_HISTORY

因此，也可以直接给该用户赋予 `STANDBY_REPLICATION` 角色即可：

```shell
obclient [SYS]> GRANT STANDBY_REPLICATION TO $user_name;

```

- 规避方式：

  无 。

上一篇

[查看租户中 prcode 的 RPC 请求数](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000646782)

下一篇

[大量的 change tenant 请求记录到 __all_server_event_histroy 表导致 OCP 采集任务用满 SYS 租户 CPU 资源](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000002762860) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
