【 使用环境 】测试环境
【 OB or 其他组件 】
【 使用版本 】OB Cloud 事务型(MySQL 兼容模式)存算一体 V4.3.5
【问题描述】我创建dept表(CREATE TABLE Dept(
Deptno int ,
Dname VARCHAR (20),
Location VARCHAR (10),
CONSTRAINT Pk_dept PRIMARY KEY (Deptno)
);)后,继续创建emp表(CREATE TABLE emp(
empno INT,
empname VARCHAR (10),
job VARCHAR (10),
mgr INT,
hiredate DATE,
sal INT,
comm INT,
deptno INT,
CONSTRAINT PK_emp PRIMARY KEY (empno),
CONSTRAINT FK_deptno FOREIGN KEY (deptno) REFERENCES dept (deptno)
);)此时出现报错:ErrorCode = 1142, SQLState = 42000, Details = REFERENCES command denied to user ‘admin’@’%’ for table ‘dept’
【复现路径】我就是在官网申请OB Cloud实例后,创建了一个超级用户admin,之后就开始建表了
下面是我的账号信息:
admin 超级账号 所有数据库 ENCRYPT,DECRYPT 正常
建议自己提个工单 会有人跟进的 obcloud和ob社区版 不一样 不是开源版本没有办法跟进处理
好的,非常感谢
我在官网主页的资源与服务中找到了提交工单但是好像功能没上线
你通过其他工具连接执行可以吗,我同样的类型的这个版本这个语法好像没有错误,权限show grants 可以实际看看是不是admin是不是有REFERENCES权限。
又学到了!
我ODC和Xshell去连接OBCloud都试过,还是同样的错误。
show grants:
GRANT ALTER, CREATE, DELETE, DROP, INSERT, UPDATE, SELECT, INDEX, CREATE VIEW, SHOW VIEW, ALTER ROUTINE, CREATE ROUTINE, ENCRYPT, DECRYPT ON . TO ‘admin’
正常情况的超级用户 有这个 references 权限。
创建外键报错的情况 查看 超级用户,缺少 references 权限。
考虑到obcloud 共享租户,没有开放grant 操作的权限。 所以推测是初始化生成租户、创建超级用户的后台代码可能缺少了这个references权限。
而且这个现象是有一定概率发生。
麻烦帮忙转给obcloud的产研同学看一下。 ![]()
目前测试发现,最近两天 新创建的obcloud 共享租户,有这个问题。
11.19号创建的租户还是正常的。
学到了
还没用过OBCloud版
官网可以申请免费试用,共享租户,挺方便的 ![]()
可以释放目前的实例,重新申请试试了。刚才测试已经恢复了。
这个就是少权限,不是客户端问题了。





