首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Solaris 11 x86 平台安裝 Oracle 10g R2 完整實戰記錄

     編輯:Oracle 資料庫基礎

安裝環境版本

  • OS:Oracle Solaris 11 (x86) — 含 Sun Studio 10、OpenOffice、MySQL、Gedit 等預裝軟體
  • Oracle:10g Release 2 (10.2.0.2) for Solaris x86
  • 安裝包:10202_database_solx86.zip
  • 參考文件:B15697 - Oracle Database Installation Guide 10g Release 2 for Solaris OS (x86)

關鍵步驟與避坑記錄

1. 解壓必須在 Solaris 原生環境

# 正確方式
unzip 10202_database_solx86.zip

# 錯誤方式 (導致解壓不全、無報錯、排查兩週)
# - Windows 環境解壓
# - Solaris 檔案管理器圖形介面解壓
# 必須在終端機用 unzip 指令

2. 建立 Oracle 使用者與群組

groupadd oinstall
groupadd dba
groupadd oper

useradd -g oinstall -G dba,oper -d /export/home/oracle oracle
mkdir /export/home/oracle
chown oracle:oinstall /export/home/oracle
passwd oracle

3. 核心參數配置 (/etc/system) — 需重啟生效

# /etc/system 末尾新增
set semsys:seminfo_semmni = 100
set semsys:seminfo_semmsl = 256
set shmsys:shminfo_shmmax = 4294967295
set shmsys:shminfo_shmmni = 100

# 重啟系統
reboot

4. Solaris 專有:專案與資源控制 (Project + Resource Control)

Solaris 10+ 使用專案機制管理進程資源,替代傳統 /etc/system 部分配置。

建立專案

# 以 root 執行
projadd -U oracle -p 100 group.dba

關聯使用者屬性

# /etc/user_attr 末尾新增
oracle::::project=group.dba

驗證專案生效

su - oracle
id -p
# 輸出應包含:
# uid=100(oracle) gid=100(dba) projid=100(group.dba)

查看與調整共享記憶體資源上限

# 查看目前專案配置
prctl -n project.max-shm-memory -i project group.dba
# 輸出範例:
# project: 100: oracle
# NAME                    PRIVILEGE   VALUE   FLAG   ACTION   RECIPIENT
# project.max-shm-memory  privileged  2.00GB     -    deny

# 調整為 4GB (支援大 SGA)
prctl -n project.max-shm-memory -v 4gb -r -i project group.dba
# 永久生效寫入專案資料庫
projmod -s -K "project.max-shm-memory=(privileged,4294967295,deny)" group.dba

5. 環境變數配置 (oracle 用戶 .profile/.bash_profile)

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/lib
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK  # 或 AL32UTF8
umask 022

6. 建立安裝目錄與權限


mkdir -p /u01/app/oracle
mkdir -p /u02/oradata
chown -R oracle:oinstall /u01 /u02
chmod -R 775 /u01 /u02

7. 圖形安裝啟動


# 確保 X11 轉發或本地圖形環境
# oracle 用戶登入圖形介面
cd /path/to/database
export DISPLAY=:0.0
./runInstaller

Solaris 特有關鍵差異總結

項目LinuxSolaris 10/11
核心參數/etc/sysctl.conf + sysctl -p/etc/system + **reboot**
資源限制/etc/security/limits.conf**Project + prctl/projmod** (資源控制)
使用者屬性/etc/passwd, /etc/group/etc/user_attr (專案關聯)
共享記憶體上限kernel.shmmaxproject.max-shm-memory
解壓工具unzip (通用)**必須在 Solaris 終端機 unzip**
裝置路徑/dev/sd*, /dev/mapper/*/dev/rdsk/c*t*d*s*, /dev/dsk/...
服務管理systemd / chkconfigSMF (svcadm, svcs)

安裝後驗證


# 檢查資料庫狀態
sqlplus / as sysdba
SELECT status FROM v$instance;
-- 應顯示 OPEN

# 檢查監聽器
lsnrctl status

# 檢查 Enterprise Manager
emctl status dbconsole

經驗教訓

  1. 解壓環境決定成敗:Windows/Solaris GUI 解壓會導致檔案屬性/連結遺失,**必須終端機 unzip**
  2. Solaris 資源控制機制不同:專案 + prctl 取代 limits.conf,必須掌握
  3. /etc/system 修改需重啟:不像 Linux sysctl -p 即時生效
  4. 預裝軟體優勢:Solaris 11 內建所需編譯器/套件,省去套件安裝步驟

此記錄基於實際安裝過程整理,特別針對 Solaris 平台特有機制與易踩坑點,供同平台部署參考。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved