Oracle19C问题解决一例
【摘要】 Oracle19C问题解决一例
今天想在上次安装的Oracle 19c环境( https://bbs.huaweicloud.com/blogs/346025 )上安装OGG For Oracle。
想创建一个oracle用户ogg,create user ogg identified by xxx;
结果报了以下错误:
那就启动数据库:startup
告诉我已经启动了,要先停掉:shutdown immediate
然后再startup:
张小白想起来,一开始创建了这个dbf,后来不用了。文件已经被删了。但是数据库配置中还没删掉。
到网上查找解决方案:https://blog.csdn.net/u010682330/article/details/90747880
照此办理:
shutdown immediate;
startup mount;
select file#,name,status from v$datafile;
确实,这个dbf对于oracle来说还是online状态。
于是将其drop offline试试:
alter database datafile '/home/oracle/oradata/zhanghui/zhanghui_data.dbf' offline drop;
怎么会drop不掉呢?再去查找解决方案:https://blog.csdn.net/weixin_34553907/article/details/116421335
原来这个dbf不在当前的container里面:
show con_name
而这个dbf好像是在pdb里面:
show pdbs;
我们切换container到ORCLPDB:
alter session set container=ORCLPDB;
然后再删除这个dbf:
alter database datafile '/home/oracle/oradata/zhanghui/zhanghui_data.dbf' offline drop;
我们再shutdown后再startup:
这回Oracle正常启动了。
再试一下创建用户:
create user ogg identified by ogg;
你会发现,ogg这个用户名是非法的。
因为在目前的container里面:
用户名必须是c##开头。(怪异吧。。。)
所以,我们这样建一下用户:
create user C##ogg identified by ogg;
这样才建成功。
我们登录试试:
不行,原来c##ogg用户没有权限。
再回到超级用户赋权限:
grant dba , connect, create session to c##ogg;
再登录试试:
终于可以成功登录。
(全文完,谢谢阅读)
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)