Use Nid to Change dbname

link:

http://www.eygle.com/faq/Use.Nid.to.Change.Your.dbname.htm

Nid是Oracle从9iR2开始提供的工具,可以用来更改数据库名称,而无需通过之前重建控制文件等繁琐方式.
需要说明的是,虽然这个工具来自9iR2,但是仍然可以被用于Oracle8i.

先看一下帮助:

C:\>nid -helpDBNEWID: Release 10.1.0.2.0 - ProductionCopyright (c) 2001, 2004, Oracle. All rights reserved.关键字 说明 (默认值)----------------------------------------------------TARGET 用户名/口令 (无)DBNAME 新的数据库名 (无)LOGFILE 输出日志 (无)REVERT 还原失败的更改 否SETNAME 仅设置新的数据库名 否APPEND 附加至输出日志 否HELP 显示这些消息 否

我们通过范例来看一下用法:

1.数据库当前设置

 

 SQL> select * from v$version;BANNER----------------------------------------------------------------Oracle9i Enterprise Edition Release 9.2.0.1.0 - ProductionPL/SQL Release 9.2.0.1.0 - ProductionCORE 9.2.0.1.0 ProductionTNS for 32-bit Windows: Version 9.2.0.1.0 - ProductionNLSRTL Version 9.2.0.1.0 - ProductionSQL> show parameter nameNAME TYPE VALUE------------------------------------ ----------- ------------------------------db_file_name_convert stringdb_name string eyglevglobal_names boolean FALSEinstance_name string eyglevlock_name_space stringlog_file_name_convert stringoracle_trace_collection_name stringoracle_trace_facility_name string oracledplsql_native_make_file_name stringservice_names string eyglev

2.Shutdown数据库

SQL> connect sys/orasys as sysdbaConnected.SQL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.

 

3.Startup mount

 

SQL> startup mount
ORACLE instance started.

Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
Database mounted.

 

4. 使用NID更改

 SQL> hostMicrosoft Windows 2000 [Version 5.00.2195](C) 版权所有 1985-2000 Microsoft Corp.C:\>nid target=sys/orasys dbname=eyglenDBNEWID: Release 9.2.0.1.0 - ProductionCopyright (c) 1995, 2002, Oracle Corporation. All rights reserved.Connected to database EYGLEV (DBID=677189177)Control Files in database: E:\ORACLE\ORADATA\EYGLEN\CONTROL01.CTL E:\ORACLE\ORADATA\EYGLEN\CONTROL02.CTL E:\ORACLE\ORADATA\EYGLEN\CONTROL03.CTLChange database ID and database name EYGLEV to EYGLEN? (Y/[N]) => YProceeding with operationChanging database ID from 677189177 to 3955758099Changing database name from EYGLEV to EYGLEN Control File E:\ORACLE\ORADATA\EYGLEN\CONTROL01.CTL - modified Control File E:\ORACLE\ORADATA\EYGLEN\CONTROL02.CTL - modified Control File E:\ORACLE\ORADATA\EYGLEN\CONTROL03.CTL - modified Datafile E:\ORACLE\ORADATA\EYGLEN YSTEM01.DBF - dbid changed, wrote new name Datafile E:\ORACLE\ORADATA\EYGLEN\UNDOTBS01.DBF - dbid changed, wrote new name Datafile E:\ORACLE\ORADATA\EYGLEN\CWMLITE01.DBF - dbid changed, wrote new name Datafile E:\ORACLE\ORADATA\EYGLEN\DRSYS01.DBF - dbid changed, wrote new name Datafile E:\ORACLE\ORADATA\EYGLEN\INDX01.DBF - dbid changed, wrote new name Datafile E:\ORACLE\ORADATA\EYGLEN\ODM01.DBF - dbid changed, wrote new name Datafile E:\ORACLE\ORADATA\EYGLEN\TOOLS01.DBF - dbid changed, wrote new name Datafile E:\ORACLE\ORADATA\EYGLEN\USERS01.DBF - dbid changed, wrote new name Datafile E:\ORACLE\ORADATA\EYGLEN\XDB01.DBF - dbid changed, wrote new name Datafile E:\ORACLE\ORADATA\EYGLEN\EYGLE.DBF - dbid changed, wrote new name Datafile E:\ORACLE\ORADATA\EYGLEN\TEMP01.DBF - dbid changed, wrote new name Control File E:\ORACLE\ORADATA\EYGLEN\CONTROL01.CTL - dbid changed, wrote new name Control File E:\ORACLE\ORADATA\EYGLEN\CONTROL02.CTL - dbid changed, wrote new name Control File E:\ORACLE\ORADATA\EYGLEN\CONTROL03.CTL - dbid changed, wrote new nameDatabase name changed to EYGLEN.Modify parameter file and generate a new password file before restarting.Database ID for database EYGLEN changed to 3955758099.All previous backups and archived redo logs for this database are unusable.Shut down database and open with RESETLOGS option.Succesfully changed database name and ID.DBNEWID - Completed succesfully.

 

5.Shutdown database

 

SQL> shutdown immediate
ORA-01109: database not open

Database dismounted.
ORACLE instance shut down.

6.修改初始化参数文件、spfile文件(init.ora/spfile)

 

###########################################
instance_name=eyglen
#instance_name=eyglev

###########################################
db_domain=""
db_name=eyglen
# db_name=eyglev
###########################################

 

7.重建spfile文件
如果你没有使用spfile,当然无需重建,跳至8

 SQL> startup pfile=E:\Oracle\admin\eyglen\pfile\init.oraORACLE instance started.Total System Global Area 135338868 bytesFixed Size 453492 bytesVariable Size 109051904 bytesDatabase Buffers 25165824 bytesRedo Buffers 667648 bytesORA-01991: invalid password file 'e:\oracle\Ora9iR2\DATABASE\PWDeyglen.ORA'SQL> CREATE SPFILE='E:\Oracle\Ora9iR2\database PFILEEYGLEN.ORA' FROM 2 PFILE='E:\Oracle\admin\eyglen\pfile\init.ora';File created.

 

8.重建口令文件

 

SQL> host
Microsoft Windows 2000 [Version 5.00.2195]
(C) 版权所有 1985-2000 Microsoft Corp.

C:\>orapwd file=E:\Oracle\Ora9iR2\database\PWDeyglen.ORA password=oracle entries=5

 

9.shutdown数据库
如果不使用spfile,则可以跳至10

 

SQL> shutdown immediate
ORA-01109: database not open

Database dismounted.
ORACLE instance shut down.

 

10.Startup mount,resetlogs打开

 

SQL> startup mountORACLE instance started.Total System Global Area 135338868 bytesFixed Size 453492 bytesVariable Size 109051904 bytesDatabase Buffers 25165824 bytesRedo Buffers 667648 bytesDatabase mounted.SQL> alter database open resetlogs 2 /Database altered.SQL>

11.修改后的参数

SQL> show parameter nameNAME TYPE VALUE------------------------------------ ----------- ------------------------------db_file_name_convert stringdb_name string eyglenglobal_names boolean FALSEinstance_name string eyglenlock_name_space stringlog_file_name_convert stringoracle_trace_collection_name stringoracle_trace_facility_name string oracledplsql_native_make_file_name stringservice_names string eyglen

 

12.对数据库做个全备份

附:使用nid更改817的数据库

1. 更改前

SVRMGR> startup mount已启动 ORACLE 实例。系统全局区域合计有 61970460个字节Fixed Size 75804个字节Variable Size 17645568个字节Database Buffers 44171264个字节Redo Buffers 77824个字节已装入数据库。SVRMGR> show parameter nameNAME TYPE VALUE----------------------------------- ------- ------------------------------db_file_name_convert 字符串db_name 字符串 vilenglobal_names 布尔值 TRUEinstance_name 字符串 vilenlock_name_space 字符串log_file_name_convert 字符串oracle_trace_collection_name 字符串oracle_trace_facility_name 字符串 oracledservice_names 字符串 vilenSVRMGR>

 

2. 修改

C:\>nid target=sys/orasys@vilen dbname=vileneDBNEWID: Release 9.2.0.1.0 - ProductionCopyright (c) 1995, 2002, Oracle Corporation. All rights reserved.Connected to database VILEN (DBID=1535443189)Control Files in database: C:\ORACLE\ORADATA\VILEN\CONTROL01.CTL C:\ORACLE\ORADATA\VILEN\CONTROL02.CTL C:\ORACLE\ORADATA\VILEN\CONTROL03.CTLChange database ID and database name VILEN to VILENE? (Y/[N]) => YProceeding with operationChanging database ID from 1535443189 to 681857412Changing database name from VILEN to VILENE Control File C:\ORACLE\ORADATA\VILEN\CONTROL01.CTL - modified Control File C:\ORACLE\ORADATA\VILEN\CONTROL02.CTL - modified Control File C:\ORACLE\ORADATA\VILEN\CONTROL03.CTL - modified Datafile C:\ORACLE\ORADATA\VILEN YSTEM01.DBF - dbid changed, wrote new name Datafile C:\ORACLE\ORADATA\VILEN\RBS01.DBF - dbid changed, wrote new name Datafile C:\ORACLE\ORADATA\VILEN\USERS01.DBF - dbid changed, wrote new name Datafile C:\ORACLE\ORADATA\VILEN\TEMP01.DBF - dbid changed, wrote new name Datafile C:\ORACLE\ORADATA\VILEN\TOOLS01.DBF - dbid changed, wrote new name Datafile C:\ORACLE\ORADATA\VILEN\INDX01.DBF - dbid changed, wrote new name Datafile C:\ORACLE\ORADATA\VILEN\EQSP01.DBF - dbid changed, wrote new name Datafile C:\ORACLE\ORADATA\VILEN\PERFSTAT.DBF - dbid changed, wrote new name Control File C:\ORACLE\ORADATA\VILEN\CONTROL01.CTL - dbid changed, wrote new name Control File C:\ORACLE\ORADATA\VILEN\CONTROL02.CTL - dbid changed, wrote new name Control File C:\ORACLE\ORADATA\VILEN\CONTROL03.CTL - dbid changed, wrote new nameDatabase name changed to VILENE.Modify parameter file and generate a new password file before restarting.Database ID for database VILENE changed to 681857412.All previous backups and archived redo logs for this database are unusable.Shut down database and open with RESETLOGS option.Succesfully changed database name and ID.DBNEWID - Completed succesfully.

 

3. 关闭数据库

 

SVRMGR> shutdown immediate
ORA-01109: 数据库未打开
已卸下数据库。
已关闭 ORACLE 实例。

 

4. 修改参数文件

db_name = "vilene"
#db_name = "vilen"

instance_name = vilene
#instance_name = vilen

5. 重建口令文件

 

C:\oracle\database>orapwd file=PWDvilen.ORA password=oracle entries=5

C:\oracle\database>

6. mount数据库

SVRMGR> startup mountORACLE instance started.Total System Global Area 61970460 bytesFixed Size 75804 bytesVariable Size 17645568 bytesDatabase Buffers 44171264 bytesRedo Buffers 77824 bytesDatabase mounted.

 

7. 打开数据库

SVRMGR> alter database open resetlogs
2> /
Statement processed.

 

8. 修改后的参数

SVRMGR> show parameter nameNAME TYPE VALUE----------------------------------- ------- ------------------------------db_file_name_convert stringdb_name string vileneglobal_names boolean TRUEinstance_name string vilenelock_name_space stringlog_file_name_convert stringoracle_trace_collection_name stringoracle_trace_facility_name string oracledservice_names string vilen

 

 

时间: 2024-08-26 16:58:29

Use Nid to Change dbname的相关文章

使用dbms_backup_restore包修改dbname及dbid

      修改dbname以及dbid通常在使用RMAN还原到异机之后需要更改dbname以及dbid的情形.对于这个修改我们可以借助于命令行下的nid工具来完成.同时也可以直接调用API来实现.本文即是通过dbms_backup_restore方式来修改dbname及dbid,供大家参考.       有关使用nid方式修改dbname及dbid,请参考:使用nid命令修改 db name 及 dbid   1.修改dbid及dbname的步骤    a.一致性关闭数据库并启动数据库到rea

使用nid修改sid和dbname

如非必要,不建议在生产库上对dbid进行修改  1.修改dbid及dbname的影响 a.修改dbid     等同于创建一个新的数据库,不同的是数据已经存在于数据文件.这是由dbid的唯一性决定的.     修改之后所有之前的备份与归档日志将不可用,因为在恢复时会检测dbid,由于不匹配,则所有备份无效.     修改之后需要使用open resetlogs打开数据库,一个新的incarnation会被创建,且sequence被置为1.     修改之后且成功open的情形下,建议一致性关闭数

使用NID修改DBID和DBNAME实验

 使用NID修改DBID和DBNAME实验   在Oracle中,DBID和DBNAME是两个低调但又是及其重要的对象.作为标记信息,DBID和DBNAME广泛的出现在参数文件.密码文件.数据文件和日志文件中,更有甚者在备份集合归档日志中.笔者看过一位前辈的文章中,强调称职DBA应该将管理数据库的DBID牢记于心.   一般情况下,已经创建好的数据库是不需要修改DBID和DBNAME信息的.因为,修改这些信息意味着Oracle关键信息的变化,和大量备份数据的废止.如果需要进行变更,一定要按照固定

9I中如何修改Ddid和Dbname方法测试小结

测试环境:Windows2000 + Oracle 9.2.0.1具体操作如下:一.NID工具使用:(oracle工具,数据库安装完成后,就自动安装了),具体用法如看;C:\>nidDBNEWID: Release 9.2.0.1.0 - ProductionCopyright (c) 1995, 2002, Oracle Corporation.  All rights reserved. Keyword     Description                    (Default)

nid修改oracle 11g R2数据库名

1.查看数据库信息 show parameter instance_name show parameter db_name show parameter service_name select dbid from v$database; 2.正常 关闭数据库 sqlplus / as sysdba SQL>shutdown immediate 3.启动数据 库到mount模式 SQL>startup mount 4.确认LISTENER是启动的 lsnrctl status 5.修改数据库名

使用nid命令修改 db name 及 dbid

    工作中不可避免地碰到需要修改dbname以及dbid的情形,如将数据库恢复到同一台机器的情形是其中之一.但dbname以及dbid是用于标识数据库的重要标志之一,尤其是dbid,具有唯一性,因此对其修改应慎重处理.本文描述了修改dbname以及dbid的步骤并给出示例.   1.修改dbid及dbname的影响 a.修改dbid     等同于创建一个新的数据库,不同的是数据已经存在于数据文件.这是由dbid的唯一性决定的.     修改之后所有之前的备份与归档日志将不可用,因为在恢复时

DBNEWID工具使用二:修改DBNAME

二.使用DBNEWID修改DBNAME 1.查看当前的DBNAME SQL> select name from v$database;  NAME  ---------  WWL   2.创建参数文件 SQL> create pfile from spfile;                               File created.                 3.关闭数据库 SQL> shutdown immediate Database closed. Datab

网站设计欣赏:Change.gov简洁大气充满成熟之美

文章描述:Change.gov-值得学习的美丽细节. 前段时间,突然想去看看奥巴马的网站是怎么设计的,于是Google到了Change.gov. 刹那间眼前一亮---简洁大气,充满了成熟之美. 一直想写篇赏析来学习下Magicwan的设计,一直拖到今天(懒惰的人啊) 一.Background 深蓝色背景,给人踏实,稳重,具有可靠信赖感. 二.Head 1.在logo和辅助图形之间,没有使用100%的直线而是一条柔和的渐变线.即没有破坏head的统一感,又起到了区分logo和图形的作用. 2.背景

SEOer的天赋在于随着需求进行Change

  "Change"(改变)是美国总统奥巴马2008年竞选美国总统的时候提出的口号,奥巴马这个口号及思想与人们在21求变求创新的思想不谋而合,最奥巴马做上了美国总统.奥巴马说过"美国的真正天赋在于,它懂的改变."那么SEOer的天赋在与什么呢?SEOer的天赋在于随着需求进行Change. 在21世纪,特别是在中国,不管是新型的电子商务网站还是传统的企业网站,对与SEO的要求已经在慢慢的改变了.这对于我们SEOer来说是已经好事,市场对SEO的需求越来越大了,SEO