1. 程式人生 > >linux 及unix 修改Oracle例項名

linux 及unix 修改Oracle例項名

系統環境:CentOS 6.5
ORACLE版本:10.2

1、檢查原來的資料庫例項名
$ echo $ORACLE_SID
orcl

$ sqlplus / as sysdba
> select instance from v$thread;
INSTANCE
--------------------------------------------------------------------------------
orcl


2、關閉資料庫
> shutdown immediate;
> exit;


3、修改oracle使用者的ORACLE_SID環境變數,如由orcl修改為linuxidc
$ vi /home/oracle/.bash_profile
export ORACLE_SID=linuxidc
$ source /home/oracle/.bash_profile


4、修改/etc/oratab檔案,將sid名由orcl修改為linuxidc
$ vi /etc/oratab
linuxidc:/u01/app/oracle/11.2/db_1:Y


5、進入到$ORACLE_HOME/dbs目錄
將所有檔名中包含原來的sid的修改為對應的新sid的
$ cd $ORACLE_HOME/dbs
$ mv hc_zf.dat hc_linuxidc.dat 
$ mv lkZF lklinuxidc
$ mv orapwzf orapwlinuxidc
$ mv spfilezf.ora spfilelinuxidc.ora


6、重建口令檔案
因為口令檔案改名後不能在新例項中使用,所以重建
$ orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=123456 entries=5 force=y


7、啟動資料庫
$ sqlplus / as sysdba 
> startup

8、檢查資料庫例項名
通過如下語句檢查資料庫例項名,發現例項名已經由orcl變成linuxidc
> select instance from v$thread; 
INSTANCE
--------------------------------------------------------------------------------
linuxidc

這個時候雖然例項名字已經改成linuxidc,但是資料庫名(dbname)仍然為orcl,因此在客戶端仍舊無法連線,如需要連線,則需修改dbname