为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DMRWC主备集群+DM8单机
【操作系统】:centos
【CPU】:
【问题描述】*:
1.在DMRWC主备集群的主库上使用disql备份全量
2.将全量备份集scp到DM8单机环境上
3.DM8单机环境通过dmrman还原恢复该备份集
恢复完成后,disql登录数据库报错
[-5671]:没有CREATE SESSION权限.
DMRWC主备集群是不是不可以还原恢复至DM单机?
不是通用机吗
对比下备份的源库和还原的库此帐号的权限是否一样,如缺少哪个权限授权哪个权限试试呢,可通过以下语句查询用户权限
SELECT * FROM (
select '用户名:'||GRANTEE||',系统权限:'||PRIVILEGE||',是否可转授:'||ADMIN_OPTION 用户权限 from DBA_SYS_PRIVS t where T.GRANTEE IN(select USERNAME from dba_users where DBA_USERS.USERNAME not in('SYSAUDITOR','SYSDBA','SYSSSO','SYS')) union ----系统权限
select '用户名:'||GRANTEE||',拥有者:'||OWNER||',对象名:'||TABLE_NAME||',对象权限:'||PRIVILEGE||',是否可转授:'||GRANTABLE from DBA_TAB_PRIVS t where T.GRANTEE IN(select USERNAME from dba_users where DBA_USERS.USERNAME not in('SYSAUDITOR','SYSDBA','SYSSSO','SYS')) union----对象权限
select '用户名:'||GRANTEE||',角色权限:'||GRANTED_ROLE||',是否可转授:'||ADMIN_OPTION from DBA_ROLE_PRIVS t where T.GRANTEE IN(select USERNAME from dba_users where DBA_USERS.USERNAME not in('SYSAUDITOR','SYSDBA','SYSSSO','SYS'))union----角色
select '用户名:'||GRANTEE||',拥有者:'||OWNER||',对象名:'||TABLE_NAME||',列名:'||COLUMN_NAME||',列权限:'||PRIVILEGE||',是否可转授:'||GRANTABLE from DBA_COL_PRIVS t where T.GRANTEE IN(select USERNAME from dba_users where DBA_USERS.USERNAME not in('SYSAUDITOR','SYSDBA','SYSSSO','SYS')) ----列权限
);
这应该是两边的版本不一致导致的。估计是源库的版本比较低。可以在恢复后用老版本的dmserver先正常启动,然后数据库会自动刷新元数据。待元数据刷新完成后正常关闭数据库,然后用新版本的dmserver启动数据库即可。
是可以恢复到单机的,你这个是没有CREATE SESSION创建会话的权限,看看能不能给赋权一下