1. 改变全局数据库名
SQL> conn sys/orcl@demo as sysdba
已连接。
SQL> alter database rename global_name to demo.oracle.com;
数据库已更改。
SQL> select * from global_name;
GLOBAL_NAME
--------------------------------------------------------------------------------
DEMO.ORACLE.COM
2. 改变DBID
(1) 关闭并装载数据库。
(2) 改变 DBID。
(3) 装载并打开数据库。
SQL> conn sys/orcl@demo as sysdba
已连接。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 603979776 bytes
Fixed Size 1250380 bytes
Variable Size 176163764 bytes
Database Buffers 419430400 bytes
Redo Buffers 7135232 bytes
数据库装载完毕。
SQL> host nid target=sys/orcl@demo
DBNEWID: Release 10.2.0.1.0 - Production on 星期五 2月 20 18:23:36 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已连接数据库 DEMO (DBID=3411805505)
已连接服务器版本 10.2.0
数据库中的控制文件数:
D:\DEMO\CONTROL01.CTL
C:\DEMO\CONTROL01.CTL
是否更改数据库 DEMO 的数据库 ID? (Y/[N]) => Y
操作继续进行
将数据库 ID 从 3411805505 更改为 3423359081
控制文件 D:\DEMO\CONTROL01.CTL - 已修改
控制文件 C:\DEMO\CONTROL01.CTL - 已修改
数据文件 D:\DEMO\SYSTEM01.DBF - dbid 已更改
数据文件 D:\DEMO\UNDOTBS01.DBF - dbid 已更改
数据文件 D:\DEMO\SYSAUX01.DBF - dbid 已更改
数据文件 D:\DEMO\USERS01.DBF - dbid 已更改
数据文件 D:\DEMO\TEMP01.DBF - dbid 已更改
控制文件 D:\DEMO\CONTROL01.CTL - dbid 已更改
控制文件 C:\DEMO\CONTROL01.CTL - dbid 已更改
实例关闭
数据库 DEMO 的数据库 ID 已更改为 3423359081。
此数据库的所有以前的备份和归档重做日志均不可用。
数据库无法识别恢复区中以前的备份和归档日志。
数据库已关闭, 用 RESETLOGS 选项打开数据库。
已成功更改数据库 ID。
DBNEWID - 已成功完成。
SQL> startup mount
ORA-03113: 通信通道的文件结束
SQL> conn sys/orcl@demo as sysdba
已连接到空闲例程。
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 603979776 bytes
Fixed Size 1250380 bytes
Variable Size 176163764 bytes
Database Buffers 419430400 bytes
Redo Buffers 7135232 bytes
数据库装载完毕。
SQL> alter database open resetlogs;
数据库已更改。
3. 改变 DBNAME
(1) 关闭并装载数据库。
(2) 改变 DBNAME。
(3) 修改初始化参数 DB_NAME。
(4) 重新建立口令文件。
(5) 启动数据库。
SQL> conn sys/orcl@demo as sysdba
已连接。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 603979776 bytes
Fixed Size 1250380 bytes
Variable Size 180358068 bytes
Database Buffers 415236096 bytes
Redo Buffers 7135232 bytes
数据库装载完毕。
SQL> host nid target=sys/orcl@demo dbname=test setname=y
DBNEWID: Release 10.2.0.1.0 - Production on 星期五 2月 20 18:29:29 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已连接数据库 DEMO (DBID=3423359081)
已连接服务器版本 10.2.0
数据库中的控制文件数:
D:\DEMO\CONTROL01.CTL
C:\DEMO\CONTROL01.CTL
是否将数据库 DEMO 的数据库名更改为 TEST? (Y/[N]) => y
操作继续进行
将数据库名从 DEMO 更改为 TEST
控制文件 D:\DEMO\CONTROL01.CTL - 已修改
控制文件 C:\DEMO\CONTROL01.CTL - 已修改
数据文件 D:\DEMO\SYSTEM01.DBF - 已写入新名称
数据文件 D:\DEMO\UNDOTBS01.DBF - 已写入新名称
数据文件 D:\DEMO\SYSAUX01.DBF - 已写入新名称
数据文件 D:\DEMO\USERS01.DBF - 已写入新名称
数据文件 D:\DEMO\TEMP01.DBF - 已写入新名称
控制文件 D:\DEMO\CONTROL01.CTL - 已写入新名称
控制文件 C:\DEMO\CONTROL01.CTL - 已写入新名称
实例关闭
数据库名已更改为 TEST。
修改参数文件并在重新启动前生成新的口令文件。
已成功更改数据库名。
DBNEWID - 已成功完成。
修改 initdemo.ora
*.db_name='test'
SQL> host del %oracle_home%\database\pwddemo.ora
SQL> host orapwd file=%oracle_home%\database\pwddemo.ora password=orcl
SQL> conn sys/orcl@demo as sysdba
已连接到空闲例程。
SQL> startup pfile=%oracle_home%\database\initdemo.ora
ORACLE 例程已经启动。
Total System Global Area 603979776 bytes
Fixed Size 1250380 bytes
Variable Size 281021364 bytes
Database Buffers 314572800 bytes
Redo Buffers 7135232 bytes
数据库装载完毕。
数据库已经打开。
SQL> create spfile from pfile;
文件已创建。