首批通过分布式安全可靠测评,为关键业务系统打造
SERVICE_NAME
更新时间:2026-04-15 23:07:34
描述
ALTER SYSTEM {CREATE | DELETE | START | STOP} SERVICE ... 语句用于维护 SERVICE_NAME(服务名),控制 SERVICE_NAME 的创建、删除、启动和停止等操作。
说明
通过 OCP 进行服务名管理和主备切换操作,参见 主备租户日常切换。
使用限制及注意事项
META/SYS租户不支持SERVICE_NAME功能。- OceanBase 云平台(OceanBase Cloud Platform,OCP)保证了在其管理的集群范围内,一个
SERVICE_NAME下只能有一个主租户,用户黑屏设置SERVICE_NAME需要自行保证。 FAILOVER操作自动删除租户下所有SERVICE_NAME。- 一个租户最多有一个
SERVICE_NAME。 - 通过
SERVICE_NAME建立的连接,不允许执行SERVICE_NAME和租户主备角色转换有关运维命令,否则会报OB_OP_NOT_ALLOW错误。
权限要求
执行该语句的用户需要拥有 ALTER SYSTEM 权限。有关 OceanBase 数据库权限的详细介绍,请参见 MySQL 模式下的权限分类 和 Oracle 模式下的权限分类。
语法
ALTER SYSTEM {CREATE | DELETE | START | STOP} SERVICE service_name [tenant = 'tenant_name'];
参数解释
| 参数 | 描述 |
|---|---|
| CREATE | 创建服务。创建服务后,自动启动服务。 |
| DELETE | 删除服务。删除服务前,服务需要已经被停止。 |
| START | 启动服务。启动服务后,可以通过本 SERVICE_NAME 建 Session 或者允许请求。 |
| STOP | 停止服务。停止服务后,既不存在通过该 SERVICE_NAME 启动的 Session,也不能通过该 SERVICE_NAME 建立新的 Session。 |
| service_name | 指定服务名称。 |
| tenant_name | 可选项,指定待操作的租户。如果不显式指定待操作的租户,则默认租户名为当前租户。
注意系统租户不支持 |
示例
为租户 mysql001 创建服务 service_mysql001。
ALTER SYSTEM CREATE SERVICE service_mysql001 TENANT = 'mysql001';
相关文档
使用视图查询租户的
SERVICE_NAME及其状态的信息,参见 DBA_OB_SERVICES 或 oceanbase.CDB_OB_SERVICES。使用视图指定
MODULE为SERVICE NAME查询SERVICE_NAME有关运维命令的执行情况,参见 DBA_OB_TENANT_EVENT_HISTORY 或 oceanbase.CDB_OB_TENANT_EVENT_HISTORY。有关
SERVICE_NAME运维命令的介绍信息,参见 创建服务。使用
SERVICE_NAME连接到租户的介绍信息,参见 通过 OBClient 连接 OceanBase 租户(MySQL 模式) 或 通过 OBClient 连接 OceanBase 租户(Oracle 模式)。