ora-01504:数据库名称与参数db_name不匹配的解决方法

ORA-01504:Oracle12C数据库名称与参数dbhome_01不匹配的解决方法(把我所有踩雷点全都列出来了)

在手工创建数据库到最后运行建库脚本报了这样的错:ORA-01504:数据库名称与参数db_name
database name ‘prod’ does not match parameter db_name ‘orcl’

在这里插入图片描述

解决方法:

1.先看你的bash_profile里面的ORACLE_SID是不是改成数据库名称

步骤:先退出sql回到oracle用户目录(退出直接输入exit)

(1)vi .bash_profile

在这里插入图片描述

注意看ORACLE_SID=你自己建的数据库名称,我数据库名称为prod,所以我就写ORACLE_SID=prod

如果没有这行export ORACLE_SID=你自己建的数据库名称,那么就在这里面加进去,先i,加入这行语句,然后按esc键,最后再输入:wq,就可以退出保存了

(2)如果你更改了.bash_profile里面的内容,就执行则条语句:source .bash_profile

(3)然后再去看initprod.ora里面的内容有没有改,即vi initprod.ora

在这里插入图片描述

看db_name有没有改成你命名的数据库名称,我的db_name=‘prod’,跟我的ORACLE_SID的名称一样

2.(1)cd /home/oracle,然后ls查看有没有initprod.ora文件(有的话再进行下面步骤)

(2)cd /u01/app/oracle/product/12.2.0.1/dbhome_1/dbs

(3) mv /home/oracle/initprod.ora initprod.ora
(这个步骤的目的是把家目录下的文件移动到当前目录下来)

然后在当前目录下ls查看initprod.ora移动过来没有

在这里插入图片描述

再输入:cat initpord.ora(查看移过来的文件是不是一样的)

在这里插入图片描述

以上没问题就试一下:

1.sqlplus / as sysdba

2.startup nomount

3.运行建库脚本

**如果以上你都做了但运行建库脚本还是报ORA_01504的错,那就是权限问题,解决方法:

**
1.cd /u01/app/oracle/product/12.2.0.1/dbhome_1/dbs

2.ll

查看当前权限

在这里插入图片描述

这里的用户都是oracle :oinstall,没有问题

(如果这里的用户显示的是root,则用该条语句:chown -R oracle:oinstall dbs)

3.cd ORACLEBASE/admin/ORACLE_BASE/admin/ORACLEBASE/admin/ORACLE_SID(这里我不知道为什么放上网的命令变成这样,你们看我下面的截图吧,里面有这条命令)

4.ll

在这里插入图片描述

看!!!原来是我这里的用户权限都是root,看来是这里出问题

5.su - root(先切换成root用户)

5.cd /u01/app/oracle/admin

6.ll

在这里插入图片描述

再看!!!原来我的prod的用户权限都是root,那我得换成oracle oinstall

7.chown -R oracle:oinstall prod

8.ll

在这里插入图片描述

如图所示,我已经把用户权限给改成oracle oinstall

9.cd prod

10.ll

在这里插入图片描述

这里的用户权限也改了,很好

10.su - oracle(切换成oracle用户)

11.sqlplus / as sysdba

12.startup nomount

13.运行建库脚本

这时候应该已经成功了

如果再再不成功,以我失败多次的经验,我的解决方法是:

1.cd /u01/app/oracle

2.ls

在这里插入图片描述

发现我没有fast_recovery_area文件

3.mkdir fast_recovery_area

4.sqlplus / a s sysdba

5.startup nomount

6.运行建库脚本

在这里插入图片描述
呼,终于建库成功了!!!!!

如果各位小伙伴还是有问题,可以在讨论区问我,鄙人会尽力帮你们解决的。

评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值