1. <var id="fe6gj"></var>

    <rp id="fe6gj"><nav id="fe6gj"></nav></rp>

    <noframes id="fe6gj"><cite id="fe6gj"></cite>

    <ins id="fe6gj"><button id="fe6gj"><p id="fe6gj"></p></button></ins>
    1. <tt id="fe6gj"><i id="fe6gj"><sub id="fe6gj"></sub></i></tt>
        始創于2000年 股票代碼:831685
        咨詢熱線:0371-60135900 注冊有禮 登錄
        • 掛牌上市企業
        • 60秒人工響應
        • 99.99%連通率
        • 7*24h人工
        • 故障100倍補償
        您的位置: 網站首頁 > 幫助中心>文章內容

        復制Oracle Home所需要注意的幾個問題

        發布時間:  2012/9/14 16:34:44

        近日通過復制Oracle Home($ORACLE_HOME)目錄來安裝Oracle的時候遇到了幾個問題。

              首先建好Oracle的相關OS用戶、組還有調整好內核參數,當然還有設置Oracle用戶的一些環境變量(~/.bash_profile),對于正規安裝過Oracle的朋友來說這都是浮云。-
         


              如果源機和目標機的Oracle Home目錄一樣,用戶、組也一樣,那直接復制過去后重新用root用戶運行一下root.sh就可以了,非常簡單。

              如果源機和目標機的Oracle Home目錄一樣,用戶、組不一樣(主要是用戶ID不一樣),復制過去后要重新設定一下文件所屬 chown -R 用戶:組 $ORACLE_HOME,然后 relink all(relink all可以參考這篇文章),再運行一下root.sh就可以了,其實也沒什么大不了的。

              如果用戶、組和Oracle Home目錄都不一樣,就比較麻煩了,也就是本文的重點內容,一下模擬這個過程。

              先介紹一下環境,源機:

        1 [Oracle@test01 oracle]$ echo $ORACLE_BASE  

        2 /u01/app/oracle 

        3 [oracle@test01 oracle]$ echo $ORACLE_HOME  

        4 /u01/app/oracle/11.2.0.2 

        5 [oracle@test01 oracle]$ id 

        6 uid=1003(oracle) gid=501(oracle) groups=501(oracle)

              目標機:

        1 [ora11g@test06 ora11g]$ echo $Oracle_BASE  

        2 /u01/app/ora11g 

        3 [ora11g@test06 ora11g]$ echo $ORACLE_BASE  

        4 /u01/app/ora11g/product/11.2.0.2/db_1 

        5 [ora11g@test06 ora11g]$ id 

        6 uid=731(ora11g) gid=700(oradba) groups=700(oradba)

              首先在源機上對Oracle Home打包,要用root用戶執行,并且保留相關的權限,復制到目標機器上:

        1 [Oracle@test01 oracle]$ echo $ORACLE_HOME 

        2 /u01/app/oracle/11.2.0.2 

        3 [oracle@test01 oracle]$ exit 

        4 [oracle@test01 ~]$ cd /u01/app/oracle/ 

        5 [root@test01 oracle]# tar zcvfp 11.2.0.2.tar.gz ./11.2.0.2/ 

        6 [root@test01 oracle]# scp ./11.2.0.2.tar.gz 10.168.0.206:/u01/app/ora11g/product/11.2.0.2/

              下文就和源機沒有什么關系了,在目標機上解壓這個壓縮包,并替換新的Oracle Home目錄,當然還要將文件歸屬搞好:

        01 [root@test06 ~]# cd /u01/app/ora11g/product/11.2.0.2/ 

        02 [root@test06 11.2.0.2]# tar zxvf 11.2.0.2.tar.gz  

        03 [root@test06 11.2.0.2]# ll 

        04 total 2129880 

        05 drwxr-xr-x 75   1003 oradba       4096 Nov 20 22:19 11.2.0.2 

        06 -rw-r--r--  1 root   root   2178854174 Jan 21 09:35 11.2.0.2.tar.gz 

        07 drwxr-xr-x  2 ora11g oradba       4096 Jan 21 09:47 db_1 

        08 [root@test06 11.2.0.2]# rm -rf db_1/ 

        09 [root@test06 11.2.0.2]# mv 11.2.0.2 db_1 

        10 [root@test06 11.2.0.2]# chown -R ora11g:oradba ./db_1/

              修改 $Oracle_HOME/rdbms/lib/config.c 將Oracle用戶的組名改過來,relink all一下就可以了:

        01 [root@test06 ~]# su - ora11g 

        02 [ora11g@test06 ~]$ cat $Oracle_HOME/rdbms/lib/config.c 

        03   

        04 /*  SS_DBA_GRP defines the UNIX group ID for sqldba adminstrative access.  */ 

        05 /*  Refer to the Installation and User's Guide for further information.  */ 

        06   

        07 /* IMPORTANT: this file needs to be in sync with 

        08               rdbms/src/server/osds/config.c, specifically regarding the 

        09               number of elements in the ss_dba_grp array. 

        10  */ 

        11   

        12 #define SS_DBA_GRP "oradba" 

        13 #define SS_OPER_GRP "oradba" 

        14 #define SS_ASM_GRP "oradba" 

        15   

        16 char *ss_dba_grp[] = {SS_DBA_GRP, SS_OPER_GRP, SS_ASM_GRP};    

        17 [ora11g@test06 ~]$ relink all

              修改 $Oracle_HOME 中的 oraInst.loc 文件,其實就是填入正確 oraInventory 目錄,這個oraInventory 可以不建,但是父目錄必須存在,并且Oracle用戶可以寫入(建目錄):

        01 [ora11g@test06 ~]$ cd $Oracle_HOME 

        02 [ora11g@test06 db_1]$ cp oraInst.loc{,.bak} 

        03 [ora11g@test06 db_1]$ vim oraInst.loc 

        04 [ora11g@test06 db_1]$ more oraInst.loc*    

        05 :::::::::::::: 

        06 oraInst.loc 

        07 :::::::::::::: 

        08 inventory_loc=/u01/app/ora11g/oraInventory 

        09 inst_group=oradba 

        10 :::::::::::::: 

        11 oraInst.loc.bak 

        12 :::::::::::::: 

        13 inventory_loc=/u01/app/oracle/oraInventory 

        14 inst_group=oradba

              修改 $Oracle_HOME/clone/config/cs.properties  在最后加上參數-invPtrLoc 指明 oraInst.loc 所在的路徑:

        1 [ora11g@test06 db_1]$ cd $Oracle_HOME/clone/config 

        2 [ora11g@test06 config]$ cat cs.properties  

        3 # Copyright (c) 2005, Oracle. All rights reserved.   

        4   

        5 # clone command line 

        6 clone_command_line= -silent -noConfig -nowait -invPtrLoc "/u01/app/ora11g/product/11.2.0.2/db_1/oraInst.loc"

              再去到 $Oracle_HOME/clone/bin 目錄執行一下一個perl腳本:

        1 ./clone.pl \ 

        2 Oracle_HOME="/u01/app/ora11g/product/11.2.0.2/db_1" \ 

        3 ORACLE_BASE="/u01/app/ora11g" \ 

        4 OSDBA_GROUP="oradba" \ 

        5 OSOPER_GROUP="oradba" \ 

        6 OSASM_GROUP="oradba" \ 

        7 ORACLE_HOME_NAME="OracleHome1"

         
        01 [ora11g@test06 config]$ cd $ORACLE_HOME/clone/bin 

        02 [ora11g@test06 bin]$ ls 

        03 clone.pl  prepare_clone.pl 

        04 [ora11g@test06 bin]$ ./clone.pl \ 

        05 [ora11g@test06 bin]> ORACLE_HOME="/u01/app/ora11g/product/11.2.0.2/db_1" \ 

        06 [ora11g@test06 bin]> ORACLE_BASE="/u01/app/ora11g" \ 

        07 [ora11g@test06 bin]> OSDBA_GROUP="oradba" \ 

        08 [ora11g@test06 bin]> OSOPER_GROUP="oradba" \ 

        09 [ora11g@test06 bin]> OSASM_GROUP="oradba" \ 

        10 [ora11g@test06 bin]> ORACLE_HOME_NAME="OracleHome1"

              最后按照提示用root用戶執行那個 $Oracle_HOME 的 root.sh 就OK了。


         


        本文出自:億恩科技【www.endtimedelusion.com】

        服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

      1. 您可能在找
      2. 億恩北京公司:
      3. 經營性ICP/ISP證:京B2-20150015
      4. 億恩鄭州公司:
      5. 經營性ICP/ISP/IDC證:豫B1.B2-20060070
      6. 億恩南昌公司:
      7. 經營性ICP/ISP證:贛B2-20080012
      8. 服務器/云主機 24小時售后服務電話:0371-60135900
      9. 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
      10. 專注服務器托管17年
        掃掃關注-微信公眾號
        0371-60135900
        Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
          0
         
         
         
         

        0371-60135900
        7*24小時客服服務熱線

         
         
        av不卡不卡在线观看_最近2018年中文字幕_亚洲欧美一区二区三区_一级A爱做片免费观看国产_日韩在线中文天天更新_伊人中文无码在线