首批通过分布式安全可靠测评,为关键业务系统打造
SERVICE_NAME
更新时间:2026-07-15 22:01:30
描述
ALTER SYSTEM {CREATE | DELETE | START | STOP} SERVICE ... 语句用于维护 SERVICE_NAME(服务名),控制 SERVICE_NAME 的创建、删除、启动和停止等操作。
说明
对于 OceanBase 数据库 V4.2.1 版本,从 V4.2.1 BP9 版本开始支持 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';