重命名数据库

                                                        重命名数据库(bb--&gtaa)

OS:windows 2003

1.创建备份控制文件的跟踪文件;

  alter  database  backup c ontrfile to trace as  'aa_ctl.sql';

更改aa_ctl.sql中的内容,最后,sql语句的形式应该与以下的例子相似,在下面的例子中,数据库的名称设置为aa;

CREATE CONTROLFILE set DATABASE "aa" RESETLOGS  NOARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\aa\REDO01.LOG'  SIZE 50M,
  GROUP 2 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\aa\REDO02.LOG'  SIZE 50M,
  GROUP 3 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\aa\REDO03.LOG'  SIZE 50M
DATAFILE
  'C:\ORACLE\PRODUCT\10.2.0\ORADATA\aa\SYSTEM01.DBF',
  'C:\ORACLE\PRODUCT\10.2.0\ORADATA\aa\UNDOTBS01.DBF',
  'C:\ORACLE\PRODUCT\10.2.0\ORADATA\aa\SYSAUX01.DBF',
  'C:\ORACLE\PRODUCT\10.2.0\ORADATA\aa\USERS01.DBF',
  'C:\ORACLE\PRODUCT\10.2.0\ORADATA\aa\EXAMPLE01.DBF'
CHARACTER SET ZHS16GBK
;

2.更改initbb.ora中的所有bb字段为aa

*******
dispatchers="(PROTOCOL=TCP) (SERVICE=aaXDB)"
 audit_file_dest=C:\oracle\product\10.2.0/admin/aa/adump
remote_login_passwordfile=EXCLUSIVE
 db_domain=""
db_name=aa
 control_files=("C:\oracle\product\10.2.0\oradata\aa\control01.ctl", "C:\oracle\product\10.2.0\oradata\aa\control02.ctl", "C:\oracle\product\10.2.0\oradata\aa\control03.ctl")
db_recovery_file_dest=C:\oracle\product\10.2.0/flash_recovery_area
db_recovery_file_dest_size=2147483648
 background_dump_dest=C:\oracle\product\10.2.0/admin/aa/bdump
core_dump_dest=C:\oracle\product\10.2.0/admin/aa/cdump
user_dump_dest=C:\oracle\product\10.2.0/admin/aa/udump
 *****

3.备份数据库,包括控制文件的备份.(可以使联机备份,也可以使脱机备份).

4关闭数据库.修改数据库中对路径数据文件进行重命名,这些操作将在第1步创建的sql文件中执行.注意:一定要删除控制文件.否则会出现错误:

SQL> @c:\aa_ctl.sql
CREATE CONTROLFILE set DATABASE "aa" RESETLOGS  NOARCHIVELOG
*
第 1 行出现错误:
ORA-01503: CREATE CONTROLFILE ??
ORA-00200: ????????
ORA-00202: ????: ''C:\ORACLE\PRODUCT\10.2.0\ORADATA\AA\CONTROL01.CTL''
ORA-27038: ?????????
OSD-04010: ?????? ????, ??????????????

5.启动实例:

   startup nomount;

 SQL> startup nomount;
 ORACLE 例程已经启动。

Total System Global Area  167772160 bytes
Fixed Size                  1247900 bytes
Variable Size              62915940 bytes
Database Buffers          100663296 bytes
Redo Buffers                2945024 bytes

6.执行第一步创建的sql脚本.

SQL> @c:\aa_ctl.sql

控制文件已创建。

7.发出recover database 命令;

   recover database;

8.打开数据库:

  alter database open resetlogs;

9.改变数据库的全局名称:

alter database rename global_name to aa;

10.执行完整的数据库备份.

在重命名操作前,应该确保已经拥有完整的数据库备份和原控制文件的副本,同时也要确保在重命名操作执行后立即对数据库进行备份.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21340813/viewspace-615362/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/21340813/viewspace-615362/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值