默认情况下,函数和过程只有创建者本人才能运行。 通过 GRANT 授权可以允许其他用户运行。

    GRANT 语法如下:

    1. GRANT system_privilege | role
    2. TO user | role | PUBLIC [WITH ADMIN OPTION]
    3. GRANT object_privilege | ALL ON schema.object
    4. TO user | role | PUBLIC [WITH GRANT OPTION]

    示例:将 hr.log_message 过程的执行权限授予所有人:

    1. obclient> GRANT EXECUTE ON log_message TO PUBLIC;
    2. Query OK, 0 rows affected (0.01 sec)

    几个常用的系统权限命令如下:

    • CREATE ANY PROCEDURE:创建所有过程的权限
    • DROP ANY PROCEDURE: 删除所有过程的权限
    • EXECUTE ANY PROCEDURE:执行所有过程的权限

    详细信息请参见官网 OceanBase 数据库《管理员指南》的用户权限管理章节。