溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何修改oracle數(shù)據(jù)庫的db_name,instace_name,sid_name

發(fā)布時間:2021-11-09 11:23:34 來源:億速云 閱讀:144 作者:小新 欄目:關(guān)系型數(shù)據(jù)庫

這篇文章主要介紹了如何修改oracle數(shù)據(jù)庫的db_name,instace_name,sid_name,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

概念:db_name 被記錄在數(shù)據(jù)文件,日志文件和控制文件中,可以不同于instance_name.

sid_name 1.主要是區(qū)別連接的數(shù)據(jù)庫 

                   2. 在操作系統(tǒng)層面上進(jìn)行區(qū)分,當(dāng)Oracle實例啟動時,操作系統(tǒng)上fork的進(jìn)程必須通過這個SID將實例與其他實例區(qū)分開來,后臺進(jìn)程通過該sid表示數(shù)據(jù)庫 eg: ps-ef|grep smon

                  3.instance_name是數(shù)據(jù)庫中的一個重要參數(shù),一個主機(jī)中可以有相同instance_name的多個數(shù)據(jù)庫。

Oracle的實例(instance)是由一塊共享內(nèi)存區(qū)域(SGA)和一組后臺進(jìn)程(background processes)共同組成;而后臺進(jìn)程正是數(shù)據(jù)庫和操作系統(tǒng)進(jìn)行交互的通道,這些進(jìn)程的名稱就是通過ORACLE_SID決定的

數(shù)據(jù)庫名稱db_name >實例名稱 instance_name > oracle_sid

修改實例名稱


原來的實例名稱

SQL> select dbid,name from v$database;

      DBID NAME

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

1475786014 ORCL

SQL> select instance from v$thread ;  

INSTANCE

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

orcl

修改過程:

SQL> shu immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

[root@node ~]# vi /etc/oratab 

test:/u01/app/oracle/product/11.2.0/db_1:N

[oracle@node ~]$ vi .bash_profile

export ORACLE_SID=test

[oracle@node ~]$ source .bash_profile 

[oracle@node ~]$ env|grep ORA

ORACLE_SID=test

ORACLE_BASE=/u01/app/oracle

ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

[oracle@node ~]$ cd $ORACLE_HOME/dbs

[oracle@node dbs]$ ll

total 9544

-rw-rw----. 1 oracle oinstall    1544 Jun 30 21:04 hc_orcl.dat

-rw-r--r--. 1 oracle oinstall    2851 May 15  2009 init.ora

-rw-r--r--. 1 oracle oinstall     935 Jun 30 18:04 initorcl.ora

-rw-r-----. 1 oracle oinstall      24 Jun 30 06:47 lkORCL

-rw-r-----. 1 oracle oinstall    1536 Jun 30 06:50 orapworcl

-rw-r-----. 1 oracle oinstall 9748480 Jun 30 18:05 snapcf_orcl.f

-rw-r-----. 1 oracle oinstall    2560 Jun 30 13:09 spfileorcl.ora

[oracle@node dbs]$ mv initorcl.ora inittest.ora

[oracle@node dbs]$ mv hc_orcl.dat hc_test.dat      

[oracle@node dbs]$ mv lkORCL lkTEST

[oracle@node dbs]$ mv snapcf_orcl.f snapcf_test.f

[oracle@node dbs]$ mv spfileorcl.ora spfiletest.ora

[oracle@node dbs]$ rm -rf orapworcl

[oracle@node dbs]$ orapwd file=orapwtest password=system

SQL> startup;

ORACLE instance started.

Total System Global Area 1152450560 bytes

Fixed Size                  2252584 bytes

Variable Size             738197720 bytes

Database Buffers          402653184 bytes

Redo Buffers                9347072 bytes

Database mounted.

Database opened.

SQL> select instance_name,status from v$instance;

INSTANCE_NAME    STATUS

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

test             OPEN

SQL> select instance from v$thread;

INSTANCE

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

test

SQL>  select dbid,name from v$database;

      DBID NAME

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

1475786014 ORCL

修改數(shù)據(jù)庫名稱

備份控制文件

SQL> alter database backup controlfile to trace ;

Database altered.

more /u01/app/oracle/diag/rdbms/orcl/test/trace/test_ora_119661.trc

修改后如下

CREATE CONTROLFILE set  DATABASE "TEST" RESETLOGS  noARCHIVELOG

    MAXLOGFILES 16

    MAXLOGMEMBERS 3

    MAXDATAFILES 100

    MAXINSTANCES 8

    MAXLOGHISTORY 292

LOGFILE

  GROUP 1 '/oradata/test/redo01.log'  SIZE 50M BLOCKSIZE 512,

  GROUP 2 '/oradata/test/redo02.log'  SIZE 50M BLOCKSIZE 512,

  GROUP 3 '/oradata/test/redo03.log'  SIZE 50M BLOCKSIZE 512

-- STANDBY LOGFILE

DATAFILE

  '/oradata/test/system01.dbf',

  '/oradata/test/sysaux01.dbf',

  '/oradata/test/undotbs01.dbf',

  '/oradata/test/users01.dbf',

  '/oradata/test/fan.dbf'

CHARACTER SET AL32UTF8

;

(查找所有的orcl修改為test,所有的ORCL修改為test,找到CREATE CONTROLFILE REUSE DATABASE...語句,將其中的REUSE修改為SET

SQL> shu immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> create pfile  from spfile;  

修改inittest.ora

*.audit_file_dest='/u01/app/oracle/admin/test/adump'

*.audit_trail='NONE'

*.compatible='11.2.0.4.0'

*.control_files='/oradata/test/control01.ctl'

*.db_block_size=8192

*.db_domain=''

*.db_name='test'

*.db_recovery_file_dest='/u01/app/oracle/fast_recovery_area'

*.db_recovery_file_dest_size=4385144832

*.diagnostic_dest='/u01/app/oracle'

*.dispatchers='(PROTOCOL=TCP) (SERVICE=testXDB)'

*.log_archive_format='%t_%s_%r.dbf'

*.memory_target=1150287872

*.open_cursors=300

*.processes=150

*.remote_login_passwordfile='EXCLUSIVE'

*.undo_tablespace='UNDOTBS1'

更換目錄 

/u01/app/oracle/admin/orcl/adump

/oradata/orcl/

將orcl更改為test (控制文件中的目錄和操作系統(tǒng)保持一致)

sql>create spfile from pfile;

sql>startup nomount;

sql>

SQL> CREATE CONTROLFILE set  DATABASE "TEST" RESETLOGS  noARCHIVELOG

  2      MAXLOGFILES 16

  3      MAXLOGMEMBERS 3

  4      MAXDATAFILES 100

  5      MAXINSTANCES 8

  6      MAXLOGHISTORY 292

  7  LOGFILE

  8    GROUP 1 '/oradata/test/redo01.log'  SIZE 50M BLOCKSIZE 512,

  9    GROUP 2 '/oradata/test/redo02.log'  SIZE 50M BLOCKSIZE 512,

 10    GROUP 3 '/oradata/test/redo03.log'  SIZE 50M BLOCKSIZE 512

 11  -- STANDBY LOGFILE

 12  DATAFILE

 13    '/oradata/test/system01.dbf',

 14    '/oradata/test/sysaux01.dbf',

 15    '/oradata/test/undotbs01.dbf',

 16    '/oradata/test/users01.dbf',

 17    '/oradata/test/fan.dbf'

 18  CHARACTER SET AL32UTF8

 19  ;

Control file created.

SQL> alter database open resetlogs;

Database altered.

SQL> select dbid,name from v$database;

      DBID NAME

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

1475786014 TEST

SQL> select instance from v$thread;

INSTANCE

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

test

SQL> select instance_name,status from v$instance;

INSTANCE_NAME    STATUS

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

test             OPEN

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何修改oracle數(shù)據(jù)庫的db_name,instace_name,sid_name”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI