oracle数据库改名步骤,oracle 11g2 数据库改名详细解释 oracle数据库改名详解 oracle database 改名详解 dbname...

本文详细记录了如何在Oracle 11g环境下更改数据库名称,包括设置存档日志、切换在线日志、备份控制文件、重命名目录、创建新spfile和pfile,以及验证数据库状态的过程。适合数据库管理员和新手学习数据库命名调整技巧。
摘要由CSDN通过智能技术生成

前面讲过修改sid名字,虽然已经修改过了实例名(sid),但是数据库的名称(dbname还是原来的名称orcl)

下面详细描述,更改数据库名字的。详细过程如下:

1、更改存档日志,默认安装完的oracle 测试环境是非存档模式。

要改成存档的,这个目的是为以后保存生成控制文件做准备。

sqlplus "/as sysdba"

shutdown immediate

startup mount

alter database archivelog

alter database open

2、切换在线日志——使数据库做checkpoint(第一步的四个步骤,就是为了保证这一步执行成功)

SQL> alter system archive log current;

System altered.

3、生成重建控制文件的脚本**********************resetlogs;指导老师点评:在正式的生产环境中resetlogs不能用,

SQL> alter database backup controlfile to trace resetlogs;

Database altered.

4、关闭数据库,需要干净关闭,不能shutdown abort

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> exit

Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

With the Partitioning, OLAP and Data Mining options

5、进入$ORACLE_BASE/diag/rdbms//trace目录中,找到最新生成的trc文件,这就是重建控制文件的脚本,这里要特别注意。

这个地方和10g不一样,11g取消了admin/udump目录,用diag的某个目录取代,

ls -lrt

total 2608

-rw-r----- 1 oracle oinstall 577 Nov 7 13:37 orcl_ora_12020.trc

......

-rw-r----- 1 oracle oinstall 4407 Dec 20 11:36 nihao_ora_7789.trc

6、用存当跟踪去生成:

[oracle@localhost trace]$ cp nihao_ora_5835.trc nihao.sql

[oracle@localhost trace]$ vim nihao.sql

7、编辑nihao.sql,结果类似如下的行,保留下面的行,并且 指导老师点评:下面ARCHIVELOG 和当前实例的archivelog状态有关

STARTUP NOMOUNT

CREATE CONTROLFILE SET DATABASE "NIHAO" RESETLOGS ARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 292

LOGFILE

GROUP 1 '/u01/app/oracle/oradata/nihao/redo01.log' SIZE 50M BLOCKSIZE 512,

GROUP 2 '/u01/app/oracle/oradata/nihao/redo02.log' SIZE 50M BLOCKSIZE 512,

GROUP 3 '/u01/app/oracle/oradata/nihao/redo03.log' SIZE 50M BLOCKSIZE 512

DATAFILE

'/u01/app/oracle/oradata/nihao/system01.dbf',

'/u01/app/oracle/oradata/nihao/sysaux01.dbf',

'/u01/app/oracle/oradata/nihao/undotbs01.dbf',

'/u01/app/oracle/oradata/nihao/users01.dbf',

'/u01/app/oracle/oradata/nihao/example01.dbf'

CHARACTER SET ZHS16GBK

;

--RECOVER DATABASE USING BACKUP CONTROLFILE

ALTER DATABASE OPEN RESETLOGS;

ALTER TABLESPACE TEMP ADD TEMPFILE '/u01/app/oracle/oradata/nihao/temp01.dbf'

SIZE 30408704 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;

这是改好的nihao.sql,看看文件的目录,以后要把相应的目录改过来,要不这段SQL不执行。

8、目录更改:

8.1

存档日志目录:

[oracle@localhost flash_recovery_area]$ mv ORCL/ NIHAO/

9、用spfile创造新的pfile

[oracle@localhost ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Fri Sep 30 11:30:26 2011

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

Connected to an idle instance.

SQL> create pfile='?/dbs/initnihao.ora' from spfile;

File created.

SQL> exit

Disconnected

10、进入$ORACLE_HOME/dbs目录

11、编辑initnihao.ora文件

搜索所有的orcl,重命令为nihao,搜索所有的ORCL,重命名为NIHAO;

12、删除控制文件

将原来的控制文件删除或重命名

控制文件的位置名称可以通过查看11步骤中的*.control_files来确定

13、

13.1

进入$ORACLE_BASE/admin目录

将orcl目录重命名为nihao

[oracle@localhost flash_recovery_area]$ mv orcl/ nihao/

13.2修改数据文件存放目录:

[oracle@localhost oradata]$ mv orcl/ nihao/

[oracle@localhost oradata]$ ls

nihao

13.3把dbrms下面的目录orcl的改成nihao,如下面所示:

@/u01/app/oracle/diag/rdbms/nihao/nihao/trace/nihao.sql

14、调用前面步骤修改好的nihao.sql

SQL> @/u01/app/oracle/diag/rdbms/nihao/nihao/trace/nihao.sql

ORA-01081: cannot start already-running ORACLE - shut it down first

Control file created.

Database altered.

Tablespace altered.

SQL> startup

ORA-01081: cannot start already-running ORACLE - shut it down first

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup

ORACLE instance started.

Total System Global Area 539848704 bytes

Fixed Size 1337748 bytes

Variable Size 327157356 bytes

Database Buffers 205520896 bytes

Redo Buffers 5832704 bytes

Database mounted.

Database opened.

SQL> show parameter name

NAME TYPE VALUE

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

db_file_name_convert string

db_name string nihao

db_unique_name string nihao

global_names boolean FALSE

instance_name string nihao

lock_name_space string

log_file_name_convert string

service_names string nihao.localdomain

SQL>

第二句告诉你,正在运行,但是控制文件,数据文件,表空间都做好了。意味着数据库改名成功。

下面验证:

第8行关闭数据库,

第12行启动数据库,

第21行查看数据库,结果,全部改动成功,谢谢大家。

15、最后再次验证:

SQL> select name from v$database;

NAME

---------

NIHAO

SQL>

后记,在网上没有找到oracle 11g2 改数据库名的例子和方法,自己摸索的,目录改了对于新手来说真的很麻烦,连照猫画虎都不能了。

费了两周。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值