zhyiwww
          用平實的筆,記錄編程路上的點點滴滴………
          posts - 536,comments - 394,trackbacks - 0
          linux下安裝oracle 10g 的艱難之旅

            在linux下安裝oracle是一件令人生畏的事情,其復雜程度遠遠超過安裝linux操作系統本身。如果能夠進行成功的安裝oracle,那么同時也就順便掌握了linux一些技術。本文介紹在redhat linux 下安裝oracle 10g 的方法。在這里說明一下,Oracle 10g的g是grid 的縮寫,意為網格,目前較為前沿的網絡計算技術。
            
            Oracle 10g 對軟硬件的要求都非常的高,所以要玩轉的話的花不少銀子。首先來看看它對硬件的要求:內存512兆(建議1G),cpu 主頻2.0G以上,硬盤轉速7200轉以上(建議使用scsi硬盤),依此條件,我看買臺服務器才行。其次是軟件要求:在oracle 官方的文檔里,對于x86系列支持的操作系統只有3種(radhat ES/AS 2.1(x86),redhat ES/AS 3(x86),unitedlinux1.0(x86) ),如果只有redhat 9也是可以安裝的,不過要麻煩一點點。當然oracle 10g需要更多的軟件模塊才能進行安裝,這些軟件模塊我將在后面逐一說明。在本例中,使用RedHat ES 3(x86)作為操作平臺,并且安裝了xwindow。
            
            接下來,我們檢查是否符合oracle 10g 的安裝要求,以表格的形式列出。首先是硬件情況。以root登錄系統,并且啟動x-window.如果用下表命令輸出的值大于或等于建議值,請
            
            檢查項目 命令/方法 建議值
            
            內存 #grep MemTotal /proc/meminfo 512MB
            
            交換分區 #grep SwapTotal /proc/meminfo 1GB
            
            /tmp目錄空閑區 #df –k /tmp 400MB
            
            硬盤空閑空間 #df -k 4GB
            
            繼續往下,檢查軟件需求。對redhat ES 3(x86),需要如下的軟件包:
            
            · Gnu gcc package, gcc-3.2.3-2 or 更高
            
            下面的包也必須被安裝:· make-3.79· binutils-2.11· openmotif-2.2.2-16· setarch-1.3-1 · compat-db-4.0.14.5· compat-gcc-7.3-2.96.122· compat-gcc-c??-7.3-2.96.122· compat-libstdc??-7.3-2.96.122· compat-libstdc??-devel-7.3-2.96.122
            
            為了保證系統滿足需求,執行下面的步驟檢查安裝的linux版本和安裝的套件。
            
            檢查項目 命令/方法 建議值
            
            Linux 版本 #cat /etc/issue ES 3
            
            已安裝的包 #rpm -q package_name 安裝所需包(上表所列)
            
            到這里我們已經全面的檢查了安裝oracle 10g所要求的軟硬件環境,接著我們就要為安裝創建組和用戶。
            
            下面的組和用戶必須存在
            
            The oinstall group (the oracle inventory group)
            The dba group (the OSDBA group)
            The oracle user (the oracle owner)
            
            如果上面的組和用戶不存在,用下面的步驟創建它們。(1)先查看這些組和用戶是否存在:
            
            #grep oinstall /etc/group
            #grep dba /etc/group
            
            (2)創建安裝oracle 所需的組和用戶
            
            #groupadd osintall
            #groupadd dba
            #useradd –g oinstall –G dba oracle 檢查一下oracle 是否屬于組 oinstall 和 dba (#id oracle) 再給oracle 設置一個用戶口令 #passwd oracle 輸入兩次密碼。
            
            創建安裝所需的目錄 /u01/app/oracle (the oracle base directory), /u02/oradata (an optional default directory ),用下表的命令形式創建它.然后改變它的目錄權限。
            
            [b]創建目錄 更改權限[/b]
            
            #mkdir –p /u01/app/oracle #chown –R oracle:Oinstall /u01/app/oracle /u02/oradata
            #mkdir –p /u02/oradata #chmod –R 755 /u01/app/oracle /u02/oradata
            
            配置內核參數,下表是oracle 推薦的內核參數值,請參考。
            
            Parameter Value File
            semmslsemmnssemopmsemmni 25032000100128 /proc/sys/kernel/sem
            shmall 2097152 /proc/sys/kernel/shmall
            shmmax Half the size of physical memory /proc/sys/kernel/shmmax
            shmmni 4096 /proc/sys/kernel/shmmni
            file-max 65536 /proc/sys/fs/file-max
            ip_local_port_range 1024 65000 /proc/sys/net/ipv4/ip_local_port_range
            
            確保當前的參數值大于或等于上表所列。那么怎樣查看這些參數值呢?用命令 #/sbin/sysctl –a | grep <參數名>,例如查看semmsl,用 #/sbin/sysctl -a | grep sem,余下的與此類似。逐個察看這些參數值,如果參數值不滿足要求,就需要修改它們。請完成下面這些步驟
            
            a.用文本編輯器,創建或者編輯/etc/sysctl.conf文件,添加或修改如下的行
            
            kernel.shmall = 2097152
            kernel.shmmax = 2147483648
            kernel.shmmni = 4096
            kernel.sem = 250 32000 100 128
            fs.file-max = 65536
            net.ipv4.ip_local_port_range = 1024 65000
            
            b.改變當前內核參數的值,用命令 #/sbin/sysctl –p 來實現。
            
            為了提高在linux系統上運行軟件的性能,必須對oracle用戶設置下列shell 限定。
            
            Shell Limit Item in limits.conf Hard Limit
            Maximum number of open file descriptors nofile 65536
            Maximum number of processes available to a single user nproc 16384
            
            現在創建這些限定:
            
            1. 加入下面的行到文件/etc/security/limits.conf
            
            * soft nproc 2047
            * hard nproc 16384
            * soft nofile 1024
            * hard nofile 65536
            
            
            2. 加入下面的行到文件/etc/pam.d/login ,假如它不存在的話
            
            session required /lib/security/pam_limits.so
            
            3.根據oracle 用戶的默認shell,對默認 shell start-up文件作如下改變,如果是Bourne, Bash, or Korn shell,修改環境變量/etc/profile文件如下:
            
            if [ $USER = "oracle" ]; then
            if [ $SHELL = "/bin/ksh" ]; then
            ulimit -p 16384
            ulimit -n 65536
            else
            ulimit -u 16384 -n 65536
            fi
            
            fi
            
            如果是c shell,則環境變量文件 /etc/csh.login的修改值如下:
            
            if ( $USER == "oracle" ) then
            limit maxproc 16384
            limit descriptors 65536
            endif
            
            接下來掛接光盤,#mount /dev/cdrom /mnt/cdrom 。
            
            以oracle 用戶名登錄系統,配置oracle 用戶的環境。以oracle 帳號用安裝器來安裝oracle,但是開始運行安裝器之前,還得設定oracle用戶的環境變量,因此必須:
            
            ● 設置shell startup文件的umask 為022
            
            ● 設置DISPLAY, ORACLE_BASE, and ORACLE_SID 的環境變量。下面這些步驟是對這些環境變量進行設置的方法:
            
            1、 開啟一個終端會話
            
            2、 確認xwindow 能正常顯示。#xhost??
            
            3、 改變用戶為oracle. $ su – oracle
            
            4、 檢查oracle用戶的默認shell. $echo $SHELL
            
            5、 用文本編輯器修改oracle用戶的環境變量
            
            ●bash shell on redhat
            
            $vi .bash_profile
            
            ●c shell
            
            %vi .login
            
            6、 把下面的行插入上面編輯的文件中
            
            umask 022
            
            7、 保存文件并退出
            
            8、 運行shell開始腳本:
            
            ●Bash shell on Red Hat $ . ./.profile
            
            ●C shell % source ./.login
            
            9、設置環境變量
            
            ●Bash shell
            
            $ ORACLE_BASE=/u01/app/oracle
            $ ORACLE_SID=sales
            $ export ORACLE_BASE ORACLE_SID
            
            ●c shell
            
            % setenv ORACLE_BASE /u01/app/oracle
            % setenv ORACLE_SID sales
            
            10、確認ORACLE_HOME and TNS_ADMIN 的環境變量不被用戶設置
            
            ●Bash shell
            
            $ unset ORACLE_HOME
            $ unset TNS_ADMIN
            
            ●c shell
            
            % unsetenv ORACLE_HOME
            % unsetenv TNS_ADMIN
            
            11、再檢驗一下上面設定的環境變量是否正確。
            
            $ umask
            $ env | more
            
            哎呀!終于算是完成準備工作了,喝口水,伸伸懶腰。進入安裝器(runInstaller)所在的目錄 $ cd /tmp 運行安裝 $ /mnt/cdrom/runInstaller ,依照提示完成整個安裝。

          |----------------------------------------------------------------------------------------|
                                     版權聲明  版權所有 @zhyiwww
                      引用請注明來源 http://www.aygfsteel.com/zhyiwww   
          |----------------------------------------------------------------------------------------|
          posted on 2006-06-19 16:55 zhyiwww 閱讀(732) 評論(0)  編輯  收藏 所屬分類: linux
          主站蜘蛛池模板: 琼海市| 历史| 拉萨市| 蒲江县| 新津县| 宿松县| 柳河县| 木里| 嘉禾县| 涟源市| 会理县| 拉孜县| 南充市| 青铜峡市| 阳泉市| 阿拉善左旗| 阳高县| 兴隆县| 太白县| 正宁县| 建水县| 信阳市| 馆陶县| 柯坪县| 永州市| 娄烦县| 湘乡市| 汤原县| 南郑县| 安远县| 永川市| 布尔津县| 郧西县| 贵南县| 滦平县| 利辛县| 兰考县| 屯昌县| 禹城市| 治县。| 东安县|