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

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

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

ora-01504:数据库名称与参数db_name不匹配的解决方法_第1张图片

解决方法:

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

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

(1)vi .bash_profile

ora-01504:数据库名称与参数db_name不匹配的解决方法_第2张图片

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

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

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

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

ora-01504:数据库名称与参数db_name不匹配的解决方法_第3张图片

看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(查看移过来的文件是不是一样的)

ora-01504:数据库名称与参数db_name不匹配的解决方法_第4张图片

以上没问题就试一下:

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

查看当前权限

ora-01504:数据库名称与参数db_name不匹配的解决方法_第5张图片

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

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

3.cd O R A C L E B A S E / a d m i n / ORACLE_BASE/admin/ ORACLEBASE/admin/ORACLE_SID(这里我不知道为什么放上网的命令变成这样,你们看我下面的截图吧,里面有这条命令)

4.ll

ora-01504:数据库名称与参数db_name不匹配的解决方法_第6张图片

看!!!原来是我这里的用户权限都是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

ora-01504:数据库名称与参数db_name不匹配的解决方法_第7张图片

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

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.运行建库脚本

ora-01504:数据库名称与参数db_name不匹配的解决方法_第8张图片
呼,终于建库成功了!!!!!

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

你可能感兴趣的:(ora-01504:数据库名称与参数db_name不匹配的解决方法)