管理员账户无法授予执行权限

image


不太明白为什么授权一直报错,希望大佬们能帮忙看看

你好,OB当前没有excute权限
https://www.oceanbase.com/docs/enterprise-oceanbase-database-cn-10000000001701129
用户具备create权限即可创建和执行存储过程。

还是不行,一直报错显示存储过程EXECUTE权限不足,授予了数据库用户所有的create权限了,ALL PRIVILEGES权限也授予了,也不行,还有什么解决方法呢?MySQL模式

show grants for 用户名;
ob版本是多少?

5.7.25-OceanBase-v4.1.0.0

show grants for 用户名; 这个呢

这个可以执行,但是后端那边调我这边过程,还是显示没有执行权限

你发的链接,能执行的权限我都试过了,但是他们那边用该用户调用就显示没有执行权限


看下操作是否有问题?  需要在业务租户下操作
测试是正常的
#在业务租户下创建普通用户pl_test,赋予create 权限即可
MySQL [(none)]> create user pl_test;
Query OK, 0 rows affected (0.03 sec)

MySQL [(none)]> grant create on  *.* to pl_test;   
Query OK, 0 rows affected (0.03 sec)


MySQL [(none)]> show grants for pl_test;
+----------------------------------+
| Grants for pl_test@%             |
+----------------------------------+
| GRANT CREATE ON *.* TO 'pl_test' |
+----------------------------------+
#用业务租户下的pl_test用户登录,创建存储过程和执行正常
MySQL [test]> DELIMITER //
MySQL [test]> CREATE PROCEDURE proc_name1()
    ->    BEGIN
    ->      DECLARE var_name VARCHAR(20) DEFAULT 'ZhangSan';  
    ->      SET var_name = 'LiSi'; 
    ->      SELECT var_name;
    ->    END //
Query OK, 0 rows affected (0.01 sec)

MySQL [test]> DELIMITER ;
MySQL [test]> CALL proc_name1();
+----------+
| var_name |
+----------+
| LiSi     |
+----------+
1 row in set (0.02 sec)

没事了,大佬,谢谢指导 :handshake: