我正在使用 Teradata 15。使用强大的数据库用户 sysdba,我创建了以下视图:
REPLACE VIEW DBA_TABLES_TEST.ROLE_ALL_APP_USERS AS
SELECT A.ROLENAME
FROM DBC.ROLEMEMBERSV A
WHERE A.ROLENAME LIKE 'TG%';
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Executed as Single statement. Failed [5315 : HY000] An owner referenced by user does not have SELECT WITH GRANT OPTION access to DBC.RoleMembersV.RoleName.
Elapsed time = 00:00:00.015
STATEMENT 1: Select Statement failed.
Run Code Online (Sandbox Code Playgroud)
然后我使用 DBC 授予 sysdba 选择权,但再次尝试查看,它不起作用:
GRANT SELECT ON DBC TO SYSDBA WITH GRANT OPTION;
Run Code Online (Sandbox Code Playgroud)
知道如何向 sysdba 授予正确的权限吗?
非常感谢!
我在 AIX 机器上运行 Oracle 11gR2。我使用 NID 重命名了数据库并更改了 DB ID。我可以在 nomount 模式下重新启动 db,但由于以下错误我无法挂载它。
ORA-01102: cannot mount database in EXCLUSIVE mode
ALTER DATABASE OPEN RESETLOGS
*
ERROR at line 1:
ORA-01507: database not mounted
Run Code Online (Sandbox Code Playgroud)
我使用新的 pfile 启动了 DB。我注意到 NID 实用程序没有更改 ASM 中旧的 DB 文件夹名称。所以这个重命名数据库的努力不会是完美的。
当我在 Google 上搜索此错误时,我已经删除了一些简单的内容,例如删除 $ORACLE_HOME/dbs 下的 lk* 文件。
对我在 NID 重命名命令后启动数据库有什么建议吗?
非常感谢!