Oracle的強大之處,筆者不需多說,本文旨在和大家一同探討Oracle數據庫在Linux下的安裝問題。
爲了便於閱讀,筆者已將文檔重新整理後製作成了pdf格式,您可以直接下載附件。(附件大於2M,筆者分成了兩個,下載時請注意合併。) 如果您需要下載Oracle 10g的linux鏡像,您可以在以下兩個連接中免費下載。(由於文件比較大,筆者被迫分成了兩個文件,您在下載完之後,需要合併文件,唉,沒辦法,就是很麻煩。)
第一部分:http://down.51cto.com/data/512237
第二部分:http://down.51cto.com/data/512124
環境:Linux 5.4 (2.6.18)
Oracle 10g
第一步:修改系統配置信息。
//修改hostname
# hostname myoracle.phoenix.com
//爲保證永久修改,需要修改文件
# vim /etc/sysconfig/network
HOSTNAME=myoracle.phoenix.com
//修改hosts文件
# vim /etc/hosts
127.0.0.1 phoenix.com phoenix localhost.localdomain localhost
192.168.187.1 localhost6.localdomain6 localhost6
//掛載光盤
# mkdir /mnt/cdrom
# mount /dev/cdrom /mnt/cdrom
第二步:檢查軟件包是否已經安裝。
//需要進行檢查的軟件包如下:
Red Hat Enterprise Linux 4.0 and Asianux 2.0:
binutils-2.15.92.0.2-13.EL4 compat-db-4.1.25-9 compat-libstdc++-296-2.96-132.7.2 control-center-2.8.0-12 gcc-3.4.3-22.1.EL4 gcc-c++-3.4.3-22.1.EL44 glibc-2.3.4-2.9 glibc-common-2.3.4-2.9 gnome-libs-1.4.1.2.90-44.1 libstdc++-3.4.3-22.1 libstdc++-devel-3.4.3-22.1 make-3.80-5 pdksh-5.2.14-30 sysstat-5.0.5-1 xscreensaver-4.18-5.rhel4.2 setarch-1.6-1
//逐個進行檢查
# rpm -qa |grep binutils
binutils-2.17.50.0.6-12.el5 //組件已經安裝
# rpm -qa |grep compat
compat-libgcc-296-2.96-138 //組件已經安裝
avahi-compat-libdns_sd-0.6.16-6.el5
compat-libstdc++-296-2.96-138
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
compat-libstdc++-33-3.2.3-61
# rpm -qi compat-db-4.2.52-5.1.i386.rpm
package compat-db-4.2.52-5.1.i386.rpm is not installed
# rpm -ivh compat-db-4.2.52-5.1.i386.rpm
# rpm -qa |grep control-center
control-center-2.16.0-16.el5 //組件已經安裝
# rpm -qa |grep gcc
compat-libgcc-296-2.96-138 //組件已經安裝
libgcc-4.1.2-46.el5
gcc-4.1.2-46.el5
gcc-gfortran-4.1.2-46.el5
gcc-c++-4.1.2-46.el5
# rpm -qa |grep glibc
glibc-headers-2.5-42 //組件已經安裝
glibc-2.5-42
glibc-common-2.5-42
glibc-devel-2.5-42
# rpm -qa |grep libstdc++
libstdc++-devel-4.1.2-46.el5 //組件已經安裝
compat-libstdc++-296-2.96-138
libstdc++-4.1.2-46.el5
compat-libstdc++-33-3.2.3-61
# rpm -qa |grep make
automake16-1.6.3-8 //組件已經安裝
automake15-1.5-16
automake17-1.7.9-7
make-3.81-3.el5
automake14-1.4p6-13
automake-1.9.6-2.1
imake-1.0.2-3
# rpm -qa |grep pdksh
//沒有安裝,安裝該組件
# rpm -ivh pdksh-5.2.14-36.el5.i386.rpm
# rpm -qa |grep sysstat
//沒有安裝,安裝該組件
# rpm -ivh sysstat-7.0.2-3.el5.i386.rpm
# rpm -qa |grep setarch
setarch-2.0-1.1 //組件已經安裝
注意:除此之外,爲了保證後面的安裝正確進行,還需要安裝以下組件。
# rpm -ivh libXp-1.0.0-8.1.el5.i386.rpm
第三步:添加帳號
//添加所需系統組和用戶
# groupadd dba
# groupadd oinstall
# groupadd oper
//創建一個oracle軟件使用的帳號
#useradd -g oinstall -G dba,oper oracle
第四步:修改系統相關文件
//修改系統控制文件
# vim /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
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
//修改文件限制
# vim /etc/security/limits.conf
//在末尾添加以下信息
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
//修改登錄驗證模塊
#vim /etc/pam.d/login
//在末尾添加以下信息
session required /lib/security/pam_limits.so
session required pam_limits.so
//修改配置文件
# vim /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
//可參考如下位置
//創建相關文件夾,並修改權限、所屬者等屬性。
# mkdir -p /u01/app/oracle
# chown -R oracle:oinstall /u01/app/oracle/
# chmod -R 755 /u01/app/oracle/
# mkdir /u01/flash_recovery_area
# chown oracle:oinstall /u01/flash_recovery_area/
# chmod 775 /u01/flash_recovery_area/
//以上文件夾的命名方法是Oracle官方建議的寫法。可參考如下:
# mkdir -p /mount_point/app/oracle_sw_owner
# chown -R oracle:oinstall /mount_point/app/oracle_sw_owner
# chmod -R 775 /mount_point/app/oracle_sw_owner
# mkdir /mount_point/flash_recovery_area
# chown oracle:oinstall /mount_point/flash_recovery_area
# chmod 775 /mount_point/flash_recovery_area
第五步:使用Oracle賬戶,配置文件。
# su – oracle
//修改bash配置文件
$ vim .bash_profile
//在末尾添加如下信息:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/10.2.0
export ORACLE_SID=phoenix
//執行配置文件
$ . .bash_profile
$ env | grep ORA
ORACLE_SID=phoenix //生效
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/10.2.0
第六步:測試圖形界面
//使用root身份執行xhost授權操作,之後,使用oracle身份測試圖形界面。
第七步:使用Oracle賬戶安裝
//切換到root身份,卸載現有光盤,重新裝載Oracle安裝光盤
//切換到oracle身份,進行相關安裝
//注意,如果前面的步驟中,您沒有安裝libXp-1.0.0-8.1.el5.i386.rpm,此時將會出現以下錯誤:
//此時,您需要ctrl+c終止,再次切換到root身份,重新掛載光盤,安裝相應組件
//安裝完成之後,卸載當前光盤,掛載Oracle安裝光盤,繼續安裝。
//完成之後,您可以看到以下界面。如果您再前面的步驟中已經安裝了libXp-1.0.0-8.1.el5.i386.rpm,那麼上面的報錯不會出現,您將直接看到以下界面。
//選擇下一步
//等待安裝完成後,選擇下一步
//選擇yes
//選擇安裝
//進行到這一步,您可以喝杯咖啡等待了。
//ok
//切換到root身份,執行如下操作
//完成,退出
第八步:完成其它配置
//切換到oracle身份,進行相關操作
# su – oracle
$ netca
-bash: netca: command not found
//netca命令執行失敗,需要修改配置文件,添加上環境變量
$ vim .bash_profile
//添加以下信息
export PATH=$ORACLE_HOME/bin:$PATH
$ . .bash_profile
$ lsnrctl status
LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 08-FEB-2012 05:03:28
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
//再次執行netca命令
$ netca
//將會彈出如下畫面
//選擇監聽器配置
//添加網絡監聽器
//名稱
//協議
//端口,可以自定義
//是否想要再添加其它監聽器
//下一步
//完成
//查看狀態
//剛開始安裝時候,出於節省時間考慮取消了創建數據庫配置,以下將進行創建數據庫等配置。
//使用oracle身份,執行dbca命令,繼續配置數據庫
創建數據庫
//選擇General Purpose選項
//寫出全局數據庫的名稱和sid名稱
//勾選使用企業管理器配置數據庫選項
//輸入數據庫的管理密碼,當讓也可以自定義,爲不同的賬戶使用不同的密碼
//選擇文件系統
//選擇從模版中應用
//定義閃存區域
//實例方案配置
//內存配置
//大小配置
//字符集的配置
//連接模式
//控制文件
//數據文件
//Log文件
//選擇創建數據庫文件
//密碼管理
第九步:測試
使用本機測試
//執行sqlplus命令
//使用scott用戶登錄
//試試查詢功能
//使用另一臺主機作爲客戶端,通過瀏覽器訪問
//不過按鈕顯示不正常,需要添加上英語的支持
//這樣就顯示正常多了
//可以進行相關管理
至此,Oracle的安裝已經基本完成。