RedHat Linux的Oracle 10g安裝配置詳解
在RedHat Linux 上安裝Oracle 10g數(shù)據(jù)庫的過程如下:
安裝Oracle所需的RPM包
查看缺少那些包:#rpm -q gcc make binutils openmotif
缺少的包可以到RedHat Enterprice Linux 5.4安裝程序里面找到。
*注意:一些包可能存在依賴關(guān)系,這時(shí)就要耐心地找出依賴包,一個(gè)個(gè)地安裝
配置系統(tǒng)參數(shù)
找到文件/etc/sysctl.conf 在文件的末尾添加如下內(nèi)容:
kernel.shmall = 2097152 # 可以使用的共享內(nèi)存的總量。
kernel.shmmax = 2147483648 # 最大共享內(nèi)存段大小。
kernel.shmmni = 4096 # 整個(gè)系統(tǒng)共享內(nèi)存段的最大數(shù)目。
kernel.sem = 250 32000 100 128 # 每個(gè)信號(hào)對(duì)象集的最大信號(hào)對(duì)象數(shù);系統(tǒng)范圍內(nèi)最大信號(hào)對(duì)象數(shù);每個(gè)信號(hào)對(duì)象支持的最大操作數(shù);系統(tǒng)范圍內(nèi)最大信號(hào)對(duì)象集數(shù)。
fs.file-max = 65536 # 系統(tǒng)中所允許的文件句柄最大數(shù)目。
net.ipv4.ip_local_port_range = 1024 65000 # 應(yīng)用程序可使用的IPv4端口范圍。
net.core.rmem_default = 1048576 # 套接字接收緩沖區(qū)大小的缺省值
net.core.rmem_max = 1048576 # 套接字接收緩沖區(qū)大小的最大值
net.core.wmem_default = 262144 # 套接字發(fā)送緩沖區(qū)大小的缺省值
net.core.wmem_max = 262144 # 套接字發(fā)送緩沖區(qū)大小的最大值
運(yùn)行以下命令使得內(nèi)核參數(shù)生效:
- #/sbin/sysctl -p
 
修改limits.conf文件參數(shù) (/etc/security/limits.conf)
在文件末尾s添加如下內(nèi)容:
- * soft nproc 2047
 - * hard nproc 16384
 - * soft nofile 1024
 - * hard nofile 65536
 
修改login文件(/etc/pam.d/login)
在文件末尾加上如下內(nèi)容:
- session required /lib/security/pam_limits.so
 
關(guān)閉selinux(/etc/selinux/config)
把secure linux設(shè)成無效:
- SELINUX=disabled
 
修改hosts文件(/etc/hosts)
加上如下內(nèi)容:(可參考127.0.0.1那條配置)
你的ip地址 主機(jī)名 localhost (例如:192.168.1.2 computer localhost)
(刪除127.0.0.1那條,*注意刪掉后,會(huì)衍生一個(gè)問題,就是xstart連不上,需要用到xstart時(shí)可以手動(dòng)加回去就行了)
修改系統(tǒng)版本(/etc/redhat-release)
將RedHat Enterprise Linux Server release 5.4 (Tikanga) 中5.4 該為4(安裝成功后再改為5.4)
新增組和用戶
- groupadd oinstall
 - groupadd dba
 - useradd -g oinstall -G dba oracle
 - passwd oracle
 
創(chuàng)建安裝目錄并授權(quán)給oracle用戶
- mkdir -p /u01/app/oracle/product/10.2.0/db_1
 - chown -R oracle.oinstall /u01
 
修改.bash_profile文件 (這個(gè)文件是在你創(chuàng)建的oracle用戶的根目錄下)
在文件末尾加入如下內(nèi)容:
- # Oracle Settings
 - TMP=/tmp; export TMP
 - TMPDIR=$TMP; export TMPDIR
 - ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
 - ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
 - ORACLE_SID=orcl; export ORACLE_SID
 - ORACLE_TERM=xterm; export ORACLE_TERM
 - PATH=$PATH:$ORACLE_HOME/bin; export PATH
 - LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib; export LD_LIBRARY_PATH
 - CLASSPATH=$ORACLE_HOME/JREORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
 - if [ $USER = "oracle" ]; then
 - if [ $SHELL = "/bin/ksh" ]; then
 - ulimit -p 16384
 - ulimit -n 65536
 - else
 - ulimit -u 16384 -n 65536
 - fi
 - fi
 
*這里不得不提醒的是上面那段程序,語法特別的惡心,[ ]這種符號(hào)左右兩邊都得有空格。
#p#
為安裝文件授權(quán)
將安裝文件解壓到/tmp目錄下,并授使用權(quán)
#chmod -R 775 /tmp/database
開始安裝Oracle 10g
在root用戶下打開一個(gè)終端執(zhí)行以下操作:
#xhost + (不必理會(huì)出現(xiàn)的提示信息)
再開一個(gè)終端并切換oracle用戶,執(zhí)行如下操作:
- #su oracle
 - $export LANG=en_US (這里要注意了,不設(shè)置用英文顯示,安裝界面會(huì)出現(xiàn)亂碼或有些文字看不到)
 - $cd /tmp/database
 - $./runInstaller
 
*安裝到最后處理sqlplus時(shí),系統(tǒng)會(huì)要求用root賬戶執(zhí)行兩個(gè)腳本,這時(shí)可以在剛才的第一個(gè)終端(root)上按提示找到要執(zhí)行的腳本然后執(zhí)行后繼續(xù)操作,數(shù)據(jù)庫安裝成功......!
啟動(dòng)監(jiān)聽
在oracle用戶下找到/u01/app/oracle/product/10.2.0/db_1/bin
執(zhí)行./lsnrctl service(可以查看當(dāng)前監(jiān)聽器服務(wù)情況)
執(zhí)行./lsnrctl start(啟動(dòng)監(jiān)聽)
執(zhí)行./lsnrctl stop(停止監(jiān)聽)
啟動(dòng)數(shù)據(jù)庫
用oracle賬戶登錄系統(tǒng),執(zhí)行如下命令:
- $sqlplus /nolog
 - SQL>connect /as sysdba
 - Connected to an idle instance
 - SQL>startup
 
啟動(dòng)數(shù)據(jù)庫(啟動(dòng)成功,就可以松一口氣了)。
SQL>shutdown 關(guān)閉數(shù)據(jù)庫
啟動(dòng)EM
默認(rèn)情況下,安裝Oracle時(shí),會(huì)安裝EM,它是位于數(shù)據(jù)庫服務(wù)器上的HTTP服務(wù)器
啟動(dòng)EM,要確保OracleDBConsole<SID>服務(wù)已經(jīng)啟動(dòng)
啟動(dòng)服務(wù):emctl start dbconsole
關(guān)閉服務(wù):emctl stop dbconsole
訪問EM:http://服務(wù)器名(或IP):端口(5500或1158)/em
端口號(hào)可在$ORACLE_HOME/install/protlist.ini中找到.
PL/SQL developer遠(yuǎn)程連接oracle 10g配置
到oracle官方網(wǎng)站下載:instantclient-basic-win32-11.2.0.1.0.zip 并解壓到E盤,打開解壓的文件夾instantclient_11_2,新建目錄network,在network下面再建子目錄admin,把oracle配置文件tnsnames.ora(最好是到 oracle主目錄中拷貝,免得出錯(cuò))放入admin文件夾中(即目錄結(jié)構(gòu)為:E:\instantclient_11_2\network\admin \tnsnames.ora),修改tnsnames.ora文件,將HOST一項(xiàng)改成oracle所在服務(wù)器的IP地址。
啟動(dòng)PL/SQL developer之后,打開tools下的preferences對(duì)話框,在connection項(xiàng)里面把Oracle Home設(shè)置成E:\instantclient_11_2,OCI Library設(shè)置成E:\instantclient_11_2\oci.dll。
重新啟動(dòng)PL/SQL developer就可以連接了(*如果連接不成功,可能是服務(wù)器的防火墻沒有開放1521端口,開放該端口,再重試)。
本地oracle客戶端遠(yuǎn)程連接oracle 10g配置
假設(shè)在window下安裝了oracle 10g,在目錄...\oracle\product\10.1.0\db_2\NETWORK\ADMIN下找到tnsnames.ora文件,將host值改為你要訪問的遠(yuǎn)程數(shù)據(jù)庫所在服務(wù)器ip, ok!記住登錄的時(shí)候帶上實(shí)例名,即username:用戶名@實(shí)例名。
- TEST=
 - (DESCRIPTION =
 - (ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = 1521))
 - (CONNECT_DATA =
 - (SERVER = DEDICATED)
 - (SERVICE_NAME = TEST)
 - )
 - )
 - EXTPROC_CONNECTION_DATA =
 - (DESCRIPTION =
 - (ADDRESS_LIST =
 - (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
 - )
 - (CONNECT_DATA =
 - (SID = PL***tProc)
 - (PRESENTATION = RO)
 - )
 - )
 
遠(yuǎn)程安裝
假設(shè)我們?cè)趙indow下要遠(yuǎn)程安裝oracle 10g,建議用x-manager:
1、啟動(dòng)xstart以root用戶連接遠(yuǎn)程服務(wù)器。
2、啟動(dòng)xshell以oracle用戶登陸到遠(yuǎn)程服務(wù)器。
- $export DISPLAY=192.168.1.104:0.0 (這里的ip是x-manager所在機(jī)器的ip)
 - $export LANG=en_US
 - $cd /tmp/database
 - $./runInstaller
 
關(guān)于RedHat Linux下安裝Oracle數(shù)據(jù)庫的知識(shí)就介紹到這里了,謝謝大家!
【編輯推薦】
- Oracle跟蹤文件分析工具TKPROF使用簡(jiǎn)介
 - Oracle數(shù)據(jù)庫中Rank等函數(shù)的比較與選擇
 - 如何配置Oracle 10g oem中的主機(jī)身份證明
 - 環(huán)境變量導(dǎo)致ASP.Net無法連接Oracle的一個(gè)案例
 - 環(huán)境變量導(dǎo)致ASP.Net無法連接Oracle的一個(gè)案例
 















 
 
 
 
 
 
 