DBID是数据库的唯一标识符,在一些特殊场合会涉及到DBID的相关内容,本篇文章的目的是演示将DB_NAME的值从ORCL修改为ORCL1。

一.查看当前的环境

[oracle@oracledb admin]$ echo $ORACLE_SID
orcl
[oracle@oracledb admin]$ sqlplus sys as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Thu Dec 17 09:34:51 2015 Copyright (c) 1982, 2009, Oracle. All rights reserved. Enter password: Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> show parameter db_name NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_name string orcl
SQL> show parameter service_name NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
service_names string orcl
SQL> show parameter instance_name NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string orcl
SQL> select dbid,name from v$database; DBID NAME
---------- ---------
1424428733 ORCL SQL> host lsnrctl status LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 17-DEC-2015 09:36:52 Copyright (c) 1991, 2009, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 17-DEC-2015 09:32:02
Uptime 0 days 0 hr. 4 min. 49 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /usr/oracle/app/product/11.2.0/dbhome_1/network/admin/listener.ora
Listener Log File /usr/oracle/app/diag/tnslsnr/oracledb/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracledb)(PORT=1521)))
Services Summary...
Service "orcl" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Service "orclXDB" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
The command completed successfully

二.启动数据库到MOUNT模式。

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started. Total System Global Area 3290345472 bytes
Fixed Size 2217832 bytes
Variable Size 1795164312 bytes
Database Buffers 1476395008 bytes
Redo Buffers 16568320 bytes
Database mounted.

三.使用NID工具将DB_NAME从orcl修改为orcl1。

[oracle@oracledb admin]$ nid target=sys/wangshengzhuang dbname=orcl1

DBNEWID: Release 11.2.0.1.0 - Production on Thu Dec 17 09:40:47 2015

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

Connected to database ORCL (DBID=1424428733)

Connected to server version 11.2.0

Control Files in database:
/usr/oracle/app/oradata/orcl/control01.ctl
/usr/oracle/app/flash_recovery_area/orcl/control02.ctl Change database ID and database name ORCL to ORCL1? (Y/[N]) => Y Proceeding with operation
Changing database ID from 1424428733 to 1283125855
Changing database name from ORCL to ORCL1
Control File /usr/oracle/app/oradata/orcl/control01.ctl - modified
Control File /usr/oracle/app/flash_recovery_area/orcl/control02.ctl - modified
Datafile /usr/oracle/app/oradata/orcl/system01.db - dbid changed, wrote new name
Datafile /usr/oracle/app/oradata/orcl/sysaux01.db - dbid changed, wrote new name
Datafile /usr/oracle/app/oradata/orcl/undotbs01.db - dbid changed, wrote new name
Datafile /usr/oracle/app/oradata/orcl/users01.db - dbid changed, wrote new name
Datafile /usr/oracle/app/oradata/orcl/example01.db - dbid changed, wrote new name
Datafile /usr/oracle/app/oradata/orcl/temp01.db - dbid changed, wrote new name
Control File /usr/oracle/app/oradata/orcl/control01.ctl - dbid changed, wrote new name
Control File /usr/oracle/app/flash_recovery_area/orcl/control02.ctl - dbid changed, wrote new name
Instance shut down Database name changed to ORCL1.
Modify parameter file and generate a new password file before restarting.
Database ID for database ORCL1 changed to 1283125855.
All previous backups and archived redo logs for this database are unusable.
Database is not aware of previous backups and archived logs in Recovery Area.
Database has been shutdown, open database with RESETLOGS option.
Succesfully changed database name and ID.
DBNEWID - Completed succesfully. [oracle@oracledb admin]$

四.新建密码文件。

[oracle@oracledb admin]$ orapwd file=$ORACLE_HOME/dbs/orapworcl1 password=wangshengzhuang  entries=5

五.修改参数文件中的DB_NAME参数值。

由于nid修改了控制文件和数据文件中的DB_NAME值,所以将参数文件中的DB_NAME修改来和控制文件、数据文件相同,修改为ORCL1。

[oracle@oracledb admin]$ sqlplus sys as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Thu Dec 17 09:48:14 2015

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Enter password:
Connected to an idle instance. SQL> startup nomount
ORACLE instance started. Total System Global Area 3290345472 bytes
Fixed Size 2217832 bytes
Variable Size 1795164312 bytes
Database Buffers 1476395008 bytes
Redo Buffers 16568320 bytes
SQL> show parameter db_name NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_name string orcl
SQL> alter system set db_name=orcl1 scope=spfile; System altered. SQL> shutdown immediate
ORA-01507: database not mounted ORACLE instance shut down.
SQL> startup mount
ORACLE instance started. Total System Global Area 3290345472 bytes
Fixed Size 2217832 bytes
Variable Size 1795164312 bytes
Database Buffers 1476395008 bytes
Redo Buffers 16568320 bytes
Database mounted.
SQL> alter database open resetlogs; Database altered. SQL> show parameter db_name NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_name string ORCL1
SQL>

六.查看修改后的环境

修改后的数据库DB_NAME和Service_name都会自动发生变化,instance_name不会发生变化。

SQL> show parameter db_name

NAME                     TYPE     VALUE
------------------------------------ ----------- ------------------------------
db_name string ORCL1
SQL> show parameter service NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
service_names string ORCL1
SQL> show parameter instance_nam NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string orcl
SQL> select dbid,name from v$database; DBID NAME
---------- ---------
1283125855 ORCL1 SQL> host lsnrctl status LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 17-DEC-2015 09:52:23 Copyright (c) 1991, 2009, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 17-DEC-2015 09:32:02
Uptime 0 days 0 hr. 20 min. 20 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /usr/oracle/app/product/11.2.0/dbhome_1/network/admin/listener.ora
Listener Log File /usr/oracle/app/diag/tnslsnr/oracledb/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracledb)(PORT=1521)))
Services Summary...
Service "ORCL1" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Service "orclXDB" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
The command completed successfully SQL>

七、修改实例名

修改.bash_profile 中的ORACLE_SID

vi  .bash_profile

使修改生效

source  .bash_profile

修改参数文件路径

[oracle@oracledb ~]$ cd $ORACLE_HOME/dbs
[oracle@oracledb dbs]$ pwd
/usr/oracle/app/product/11.2.0/dbhome_1/dbs
[oracle@oracledb dbs]$ mv spfileorcl.ora spfileorcl1.ora
[oracle@oracledb dbs]$ mv initorcl.ora initorcl1.ora

重启数据库,查看实例名

[oracle@oracledb dbs]$ sqlplus sys as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Thu Dec 17 10:03:21 2015

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Enter password: ***************
Connected to an idle instance. SQL> startup
ORACLE instance started. Total System Global Area 3290345472 bytes
Fixed Size 2217832 bytes
Variable Size 1795164312 bytes
Database Buffers 1476395008 bytes
Redo Buffers 16568320 bytes
Database mounted.
Database opened.
SQL> show parameter instance_name; NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string orcl1

Oracle NID工具修改数据库DBID、数据库名称、数据库实例名的更多相关文章

  1. T-SQL - query02_查看数据库信息|查看服务器名称|查看实例名

    时间:2017-09-29 编辑:byzqy 本篇记录几个查询数据库信息的 T-SQL 语句: 查看数据库信息 查看服务器名称 查看实例名 文件:SQLQuery2.sql /* 说明: SQLQue ...

  2. 8. DBNEWID 工具(使用nid命令修改db name及dbid)

    以下参考自:https://www.2cto.com/database/201305/207860.html Oralce官网:https://docs.oracle.com/cd/E11882_01 ...

  3. 电脑上不安装Oracle时,C# 调用oracle数据库,Oracle客户工具

    Oracle的安装包通常都比较大,安装又比较费时,而且如果安装过程中不幸出错,各种蛋疼,即便是安装过N遍的老手,有时候安装起来也觉得挺烦.而工作中,通常服务器上面安装oracle就可以了,我们本地电脑 ...

  4. oracle通过修改控制文件scn推进数据库scn

    数据库当前scn 代码如下 复制代码 idle> select checkpoint_change# from v$database; CHECKPOINT_CHANGE#----------- ...

  5. 使用Oracle 9i工具管理数据库 - 初学者系列 - 学习者系列文章

    前面介绍了Oracle 9i的安装,本文大概介绍下Oracle 9i提供的管理工具的使用. 1 打开数据库配置工具 2 下一步 3 下一步 4 下一步.这里输入数据库名和SID 5 下一步 6 下一步 ...

  6. 电脑上不安装Oracle时,C# 调用oracle数据库,Oracle客户工具 【转载】

    http://www.cnblogs.com/jiekzou/p/5047850.html Oracle的安装包通常都比较大,安装又比较费时,而且如果安装过程中不幸出错,各种蛋疼,即便是安装过N遍的老 ...

  7. 【ORACLE】Win2008R2修改oracle数据库实例名

    需求说明:要求将windows平台的数据库实例名由orcl改为haha 参考: https://www.cnblogs.com/junnor/archive/2013/03/05/2945245.ht ...

  8. 如何修改SQL Server 2000的数据库逻辑与物理名称

    在项目中使用SQL Server 2000创建了一个数据库,发现名称与另一个数据库太相似,于是决定更改名称,包括: 在企业管理器中看到的数据库名,也是实际应用程序中连接用的数据库名称: 在磁盘上看的物 ...

  9. 详解:数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名及手工脚本创建oracle数据库

    数据库名.实例名.数据库域名.全局数据库名.服务名 , 这是几个令很多初学者容易混淆的概念.相信很多初学者都与我一样被标题上这些个概念搞得一头雾水.我们现在就来把它们弄个明白. 一.数据库名 什么是数 ...

随机推荐

  1. HDU1730 Northcott Game 尼姆博弈

    Northcott Game Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) T ...

  2. jQuery+存储过程实现无刷新分页(九)

    涉及到得知识点: 1.分页存储过程 2.分页原理 3.jQuery DOM操作 4.jQuery Ajax存取数据   效果图:

  3. kettle的下载、安装和初步使用(windows平台下)(图文详解)

    kettle的下载 žKettle可以在http://kettle.pentaho.org/网站下载                   http://sourceforge.net/projects ...

  4. django的FormView中,自定义初始化表单数据的曲折方法

    这个技巧,主要是用于表单初始化及回显. 也就是说,如果用户的数据库里有数据,则要将相应的数据显示在表单里, 如果用户的数据库里没有数据,才会生成一个空白的表单给用户, 这样才显得专业塞! 而我面对的尴 ...

  5. IEnumerable和IEnumerator接口

    我们先思考几个问题:1.为什么在foreach中不能修改item的值?(IEnumerator的Current为只读)2.要实现foreach需要满足什么条件?(实现IEnumerator接口来实现的 ...

  6. xftp和xshell有什么区别

    XshellXshell是一个用于MS Windows平台的强大的SSH,TELNET,和RLOGIN终端仿真软件.它使得用户能轻松和安全地从Windows PC上访问Unix/Linux主机.Xft ...

  7. 【UOJ】#49.铀仓库

    题解: 会发现实质上运一个点就是两个点之间的距离 暴力是n^2的 考虑二分距离来计算 二分完之后还要二分这个点对应的位置 nlognlogn的 考虑一种常用的思路 用一个点来更新另一个点 首先我们先二 ...

  8. bzoj 4503

    没有权限号就只能对拍了 我们令?代表的T值=0,然后设出这样一个式子 这样一来,只要T和S在j位置匹配,当且仅当Dj=0,然后我们将这个式子拆开,变成下面那样 思路大概就是这样 最后发现答案应该是在a ...

  9. C#简单画图Draw研究学习

    命名空间:using System.Drawing; Graphics类:有道词典翻译 在C#里是封装一个 GDI+ 绘图图面,此类不能被继承. Pen类:定义用于绘制直线和曲线的对象. 此类不能被继 ...

  10. Unity 之 中文乱码

    更改 C#脚本的编码格式: 文件 -> 高级保存选项 -> Unicode