選擇 Shutdown。
選擇 Restart computer。
輸入 root 口令。
單擊 OK。
恭喜!您的 Linux 軟件現已安裝完畢。
驗證您的安裝
如果完成了以上步驟,您應該具備 Oracle 10g 所需的所有程序包和更新。您可以執行以下步驟驗證您的安裝。
所需內核版本:2.4.21-138(或更高版本)
?
通過運行以下命令檢查內核版本:
?
?
?
?
例如:
?
# uname -r k_smp-2.4.21-138
|
?
?
其他所需程序包的版本(或更高版本):
?
gcc-3.2.2-38 make-3.79 binutils-2.12 openmotif-2.2.2-124
|
要查看系統上安裝了這些程序包的哪些版本,以 root 用戶身份運行以下命令:
?
rpm -q gcc make binutils openmotif
|
?
例如:
?
# rpm rpm -q gcc make binutils openmotif gcc-3.2.2-38 make-3.79.1-407 binutils-2.12.90.0.15-50 openmotif-2.2.2-124
|
?
?
如果系統上缺少任何程序包版本,或版本比以上指定的版本舊,則可以從 SUSE Linux Portal 下載和安裝更新。
--------------------------------------------------------------------------------
?
第 2 部分:針對 Oracle 配置 Linux
?
Linux 軟件現已安裝完畢,您需要針對 Oracle 對其進行配置。本部分將逐步講解針對 Oracle 數據庫 10g 配置 Linux 的過程。
?
驗證系統要求
?
要驗證系統是否滿足 Oracle 10g 數據庫的最低要求,以 root 用戶身份登錄并運行以下命令。
?
?
要查看可用 RAM 和交換空間大小,運行以下命令:
?
grep MemTotal /proc/meminfo grep SwapTotal /proc/meminfo
|
?
?
例如:
?
# grep MemTotal /proc/meminfo MemTotal:512236 kB # grep SwapTotal /proc/meminfo SwapTotal:1574360 kB
|
?
?
所需最小 RAM 為 512MB,而所需最小交換空間為 1GB。對于 RAM 小于或等于 2GB 的系統,交換空間應為 RAM 數量的兩倍;對于 RAM 大于 2GB 的系統,交換空間應為 RAM 數量的一到兩倍。
?
Oracle 10g 軟件還需要 2.5GB 的可用磁盤空間,而數據庫則另需 1.2GB 的可用磁盤空間。/tmp 目錄至少需要 400MB 的可用空間。要檢查系統上的可用磁盤空間,運行以下命令:
?
?
?
?
例如:
?
# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 6.8G 1.3G 5.2G 20% / /dev/sda1 99M 17M 77M 18% /boot
|
?
?
該示例表明,/tmp 目錄沒有自己的文件系統。(對本指南而言,它是根文件系統的一部分。)根文件系統可用空間為 5.2 GB,除了滿足安裝 (2.5 + 1.2 + 0.4 = 4.1GB) 外還小有富余。
創建 Oracle 組和用戶帳戶
?
接下來,創建用于安裝和維護 Oracle 10g 軟件的 Linux 組和用戶帳戶。用戶帳戶將稱為 oracle,而組將稱為 oinstall 和 dba。以 root 用戶身份執行以下命令:
?
/usr/sbin/groupadd oinstall /usr/sbin/groupadd dba /usr/sbin/useradd -m -g oinstall -G dba oracle id oracle
|
?
?
?
例如:
?
# /usr/sbin/groupadd oinstall # /usr/sbin/groupadd dba # /usr/sbin/useradd -m -g oinstall -G dba oracle # id oracle uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)
|
?
?
設置 oracle 帳戶的口令:
?
?
?
?
例如:
?
# passwd oracle Changing password for user oracle. New password: Retype new password: passwd:all authentication tokens updated successfully.
|
?
?
創建目錄
?
現在,創建存儲 Oracle 10g 軟件和數據庫文件的目錄。本指南在創建目錄結構時所用的命名慣例符合最佳靈活結構 (OFA) 規范。有關 OFA 標準的更多信息,請參閱針對 UNIX 系統的 Oracle 數據庫 10g 安裝指南 的附錄 D。
?
以下假設在根文件系統中創建目錄。這樣做是為了簡便起見,不建議將其作為通用做法。這些目錄通常被創建為單獨的文件系統。
?
以 root 用戶身份執行以下命令:
?
mkdir -p /u01/app/oracle mkdir -p /u02/oradata chown -R oracle:oinstall /u01/app/oracle /u02/oradata chmod -R 775 /u01/app/oracle /u02/oradata
|
?
?
?
例如:
?
# mkdir -p /u01/app/oracle # mkdir -p /u02/oradata # chown -R oracle:oinstall /u01/app/oracle /u02/oradata # chmod -R 775 /u01/app/oracle /u02/oradata
|
配置 Linux 內核參數
?
Linux 內核非常出色。與大多數其他 *NIX 系統不同,Linux
允許在系統啟動和運行時修改大多數內核參數。完成內核參數更改后不必重新啟動系統。Oracle 數據庫 10g
需要以下所示的內核參數設置。其中給出的是最小值,因此如果您的系統使用的值較大,則不要更改它。
?
?
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
|
?
?
如果您按照以上說明安裝了 Linux,且內核參數全部采用默認值,則只需在以 root 用戶身份登錄后執行下命令。
?
?
cat >> /etc/sysctl.conf <<EOF 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 EOF /sbin/sysctl -p
|
?
?
例如:
?
# cat >> /etc/sysctl.conf <<EOF > 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 > EOF # /sbin/sysctl -p net.ipv4.ip_forward = 0 net.ipv4.conf.default.rp_filter = 1 kernel.sysrq = 0 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
|
?
?
以 root 用戶身份運行以下命令來驗證您的設置:
?
/sbin/sysctl -a | grep shm /sbin/sysctl -a | grep sem /sbin/sysctl -a | grep file-max /sbin/sysctl -a | grep ip_local_port_range
|
?
?
?
例如:
?
# /sbin/sysctl -a | grep shm kernel.shmmni = 4096 kernel.shmall = 2097152 kernel.shmmax = 2147483648 kernel.shm-use-bigpages = 0 # /sbin/sysctl -a | grep sem kernel.sem = 250 32000 100 128 # /sbin/sysctl -a | grep file-max fs.file-max = 65536 # /sbin/sysctl -a | grep ip_local_port_range net.ipv4.ip_local_port_range = 1024 65000
|
?
?
如果系統的參數設置的比上述參數值小,則編輯 /etc/sysctl.conf 文件,添加或更改這些參數。完成后,運行以下命令激活更改:
?
?
?
?
對于 SLES 8,在完成以上步驟后運行以下命令。
?
/sbin/chkconfig boot.sysctl on
|
為 oracle 用戶設置 Shell 限制
?
Oracle 建議對每個 Linux 帳戶可以使用的進程數和打開的文件數設置限制。要進行這些更改,以 root 用戶的身份執行下列命令:
?
cat >> /etc/security/limits.conf <<EOF oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 EOF
cat >> /etc/pam.d/login <<EOF session required /lib/security/pam_limits.so EOF
|
?
?
?
對于 RHEL 2.1 和 RHEL 3,使用以下命令:
?
cat >> /etc/profile <<EOF if [ \$USER = "oracle" ]; then if [ \$SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi EOF
cat >> /etc/csh.login <<EOF if ( \$USER == "oracle" ) then limit maxproc 16384 limit descriptors 65536 umask 022 endif EOF
|
?
?
?
對于 SLES 8,使用以下命令:
?
cat >> /etc/profile.local <<EOF if [ \$USER = "oracle" ]; then if [ \$SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi EOF
cat >> /etc/csh.login.local <<EOF if ( \$USER == "oracle" ) then limit maxproc 16384 limit descriptors 65536 umask 022 endif EOF
|
避免錯誤?。▋H限 SLES 8)
?
在 SLES 8 上安裝 Oracle Enterprise Manager 10g
時存在一個錯誤 — 由于所需端口以為 /etc/services 所保留而導致安裝失敗。OEM DBConsole 需要端口 1830,而在
SLES8 環境中,此端口已經為 /etc/services 所保留。此錯誤在 MetaLink 上的錯誤號為 3513603。
?
要避免安裝過程中出現問題,以 root 用戶身份登錄,并在安裝 Oracle 10g 軟件之前將 /etc/services 文件中的端口 1830 至 1849 對應的行注釋掉。(注意:此時,您最好重新啟動服務器以確保以上更改生效。)
?
oracle 用戶的環境變量
?
要使用 Oracle 產品,應該或必須設置幾個環境變量。對于數據庫服務器,建議設置以下環境變量:
?
ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
|
?
?
?
如果您在同一服務器上安裝了多個 Oracle 產品或數據庫,則
ORACLE_HOME、ORACLE_SID 和 PATH 變量可能會更改。ORACLE_BASE
變量不應更改,并可以在需要時在您的登錄配置文件中設置它。Oracle 提供了一個稱作 oraenv 的實用程序來設置其他變量。
?
以 oracle 身份登錄,并通過在 .bash_profile 或 .profile(bash 或 ksh)中添加以下行,將 ORACLE_BASE 添加到登錄配置文件:
?
?
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
|
?
?
或在 .login (csh) 中添加以下行:
?
setenv ORACLE_BASE /u01/app/oracle
|
?
?
此更改將在您下次登錄到 oracle 帳戶時生效。要使更改對當前會話為活動狀態,只需從命令行運行此命令。
--------------------------------------------------------------------------------
?
第 3 部分:安裝 Oracle
?
可以從 OTN 下載 Oracle 數據庫 10g。Oracle 提供了一個免費的開發和測試許可。但不提供支持,且該許可不允許用于生產目的。OTN 提供了完整的許可協議。
?
要使 Oracle 10g 發行套件介質可以在服務器上使用,最簡單的方法是將其直接下載到服務器。
?
使用圖形登錄以 oracle 身份登錄。
?
創建一個目錄以存放 Oracle 10g 發行套件:
?
mkdir 10g_db
?
要從 OTN 下載 Oracle 數據庫 10g,請將瀏覽器(Mozilla
比較好用)指向
http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/linuxsoft.html。
填寫 Eligibility Export Restrictions 頁面,并閱讀 OTN 許可協議。如果您接受限制和許可協議,則單擊 I
Accept。
?
單擊 ship.db.cpio.gz 鏈接,并將該文件保存在為此目的創建的目錄 (10g_db) 中 — 如果尚未登錄到 OTN,則此時可能提示您登錄。
?
解壓縮此文件:
?
cd 10g_db gunzip ship.db.cpio.gz cpio -idmv < ship.db.cpio
|
?
?
安裝軟件
?
使用 oracle 帳戶登錄。
?
指定數據庫名稱 (ORACLE_SID)。該名稱通常不多于五個字符。對此安裝使用 demo1。
?
設置環境變量:
?
Borne shell 和 Korn shell
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE ORACLE_SID=demo1; export ORACLE_SID
C shell
setenv ORACLE_BASE /u01/app/oracle setenv ORACLE_SID demo1
|
?
?
將目錄更改為 Oracle 10g 軟件解壓縮到的位置。
?
例如:
?
?
?
將目錄更改為 Disk1。
?
例如:
?
?
?
啟動 Oracle 通用安裝程序。
?
?
歡迎
單擊 Next。
指定清單目錄和證書
如果您一直在依循本指南中的步驟,則使用默認值即可。否則,編輯清單目錄的路徑,以指向正確目錄。
操作系統組名稱應為 oinstall。
如果這是首次在此機器上安裝 Oracle,則您將收到一個彈出窗口,提示需要以 root 用戶身份運行 orainstRoot.sh 腳本。以 root 用戶身份登錄,更改到窗口中指定的目錄,執行該腳本,然后繼續操作。
指定文件位置
如果您一直在依循本指南中的步驟,則使用默認值即可。否則,在繼續操作前確保源路徑和目標路徑正確。
選擇安裝類型
接受默認值 Enterprise Edition。
與特定產品相關的先決條件的檢查
如果您一直在依循本指南中的步驟,則所有檢查都應順利通過。如果一個或多個檢查失敗,則在繼續操作前糾正該問題。
選擇數據庫配置
接受默認值 Create a starter database 和 General Purpose。
指定數據庫配置選項
輸入數據庫的全局數據庫名稱。該名稱應包含 ORACLE_SID 和服務器域名(例如,demo1.orademo.org,其中 demo1 是 ORACLE_SID,orademo.org 是域名)。
輸入全局數據庫名稱時,SID 框將自動填充。
接受默認的數據庫字符集。
選擇 Create database with sample schemas。
選擇數據庫管理選項
選擇 Use Database Control for Database Management。
指定數據庫文件存儲選項
選擇 File System,然后輸入數據庫文件要使用的路徑名(在本例中為 /u02/oradata)。