Chinaunix首页 | 论坛 | 博客
  • 博客访问: 223887
  • 博文数量: 26
  • 博客积分: 1435
  • 博客等级: 上尉
  • 技术积分: 290
  • 用 户 组: 普通用户
  • 注册时间: 2005-12-15 16:11
文章分类

全部博文(26)

文章存档

2014年(1)

2013年(2)

2012年(1)

2011年(1)

2010年(2)

2009年(11)

2008年(3)

2006年(3)

2005年(2)

我的朋友

分类: Oracle

2009-08-25 11:30:44

 

概念:

SID : 数据库实例名

SQL> show parameter instance

 

DB_NAME: 数据库名。可以用DBNEWID (nid)命令更改DB_NAME

SQL> show parameter db_name

 

DBID: 数据库建立时创建的内部数字,用于区分不同数据库。RMAN会用该数字来区分数据库。当数据库都是正常创建时,DBID是不一样的。如果用复制的方法复制数据库,它们的DBID就会一样。可以用DBNEWID (nid)命令更改DBID

SQL> select dbid from v$database;

 

下面开始更改SID。本例中,原SID名为oldsid,更改为newsid

1. 关闭数据库

SQL > create pfile from spfile;     生成initoldsid.ora 文件,后续操作需要用到

SQL > shutdown immediate;

 

2. 编辑环境变量

# vi /home/oracle/.bash_profile

将其中的

export ORACLE_SID=oldsid   更改为

export ORACLE_SID=newsid

为使环境变量生效,以oracle用户重新登录。

 

3. 重命名参数文件

# cd $ORACLE_HOME/dbs

# mv initoldsid.ora initnewsid.ora

参数文件内容无需更改。如果本数据库是从另一台oracle服务器复制过来的,那需要将参数文件中的路径和内存等配置进行修改,这不属于本次任务。

 

4. 创建口令文件

orapwd file=$ORACLE_HOME/dbs/orapwnewsid password=oracle

至此,SID已经更改完成,数据库可以正常启动。以下操作是额外部分:

 

5. 更改其他相关配置

更改listener.ora:

vi $ORACLE_HOME/network/admin/listener.ora,若其中配置了SID_NAMEOLDSID,则需要更改为NEWSID。然后重启监听:# lsnctl restart

更改tnsnames.ora:

所有需要连接到本数据库的其他主机,都需要更改tnsnames.ora。将SERVICE_NAME = OLDSID更改为SERVICE_NAME = NEWSID。这样才能连接到本数据库。

 

阅读(1790) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~