分享
 
 
 

Use Nid to Change dbname

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

原文链接:

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

Nid是Oracle从9iR2开始提供的工具,可以用来更改数据库名称,而无需通过之前重建控制文件等繁琐方式.

需要说明的是,虽然这个工具来自9iR2,但是仍然可以被用于Oracle8i.

先看一下帮助:

C:\>nid -help

DBNEWID: Release 10.1.0.2.0 - Production

Copyright (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 - Production

PL/SQL Release 9.2.0.1.0 - Production

CORE 9.2.0.1.0 Production

TNS for 32-bit Windows: Version 9.2.0.1.0 - Production

NLSRTL Version 9.2.0.1.0 - Production

SQL> show parameter name

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

db_file_name_convert string

db_name string eyglev

global_names boolean FALSE

instance_name string eyglev

lock_name_space string

log_file_name_convert string

oracle_trace_collection_name string

oracle_trace_facility_name string oracled

plsql_native_make_file_name string

service_names string eyglev

2.Shutdown数据库

SQL> connect sys/orasys as sysdba

Connected.

SQL> shutdown immediate

Database 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> host

Microsoft Windows 2000 [Version 5.00.2195]

(C) 版权所有 1985-2000 Microsoft Corp.

C:\>nid target=sys/orasys dbname=eyglen

DBNEWID: Release 9.2.0.1.0 - Production

Copyright (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.CTL

Change database ID and database name EYGLEV to EYGLEN? (Y/[N]) => Y

Proceeding with operation

Changing database ID from 677189177 to 3955758099

Changing 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\SYSTEM01.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 name

Database 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.ora

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

ORA-01991: invalid password file 'e:\oracle\Ora9iR2\DATABASE\PWDeyglen.ORA'

SQL> CREATE SPFILE='E:\Oracle\Ora9iR2\database\SPFILEEYGLEN.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 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.

SQL> alter database open resetlogs

2 /

Database altered.

SQL>

11.修改后的参数

SQL> show parameter name

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

db_file_name_convert string

db_name string eyglen

global_names boolean FALSE

instance_name string eyglen

lock_name_space string

log_file_name_convert string

oracle_trace_collection_name string

oracle_trace_facility_name string oracled

plsql_native_make_file_name string

service_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 name

NAME TYPE VALUE

----------------------------------- ------- ------------------------------

db_file_name_convert 字符串

db_name 字符串 vilen

global_names 布尔值 TRUE

instance_name 字符串 vilen

lock_name_space 字符串

log_file_name_convert 字符串

oracle_trace_collection_name 字符串

oracle_trace_facility_name 字符串 oracled

service_names 字符串 vilen

SVRMGR>

2. 修改

C:\>nid target=sys/orasys@vilen dbname=vilene

DBNEWID: Release 9.2.0.1.0 - Production

Copyright (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.CTL

Change database ID and database name VILEN to VILENE? (Y/[N]) => Y

Proceeding with operation

Changing database ID from 1535443189 to 681857412

Changing 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\SYSTEM01.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 name

Database 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 mount

ORACLE instance started.

Total System Global Area 61970460 bytes

Fixed Size 75804 bytes

Variable Size 17645568 bytes

Database Buffers 44171264 bytes

Redo Buffers 77824 bytes

Database mounted.

7. 打开数据库

SVRMGR> alter database open resetlogs

2> /

Statement processed.

8. 修改后的参数

SVRMGR> show parameter name

NAME TYPE VALUE

----------------------------------- ------- ------------------------------

db_file_name_convert string

db_name string vilene

global_names boolean TRUE

instance_name string vilene

lock_name_space string

log_file_name_convert string

oracle_trace_collection_name string

oracle_trace_facility_name string oracled

service_names string vilen

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有