Oracle19C问题解决一例

举报
张辉 发表于 2022/05/23 17:00:43 2022/05/23
【摘要】 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

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。