Install Orace 11g on Solaris 10 Sparc 64 bit
昨天去一客戶那裡安裝11g資料庫,把整個安裝過程和遇到的一些問題做個記錄,分享一下。由於該客戶無法用自己的機器遠端連線到伺服器,也不允許通過隨身碟、移動硬碟等拷貝任何檔案,因此一些記錄內容無法做到很詳盡,只能憑記憶大致寫出。
主機:SUN Netra T4-1 M4000CPU:8 core 2.85GHz記憶體:32G系統:Solaris 10 一、檢查硬體要求
--查看記憶體
# /usr/sbin/prtconf | grep "Memory size"Memory size:32768 Megabytes # /usr/sbin/swap -lswapfile dev swaplo blocks free/dev/dsk/c0t0d0s1 32,9 16 8405360 8405360 --一個block是512k,因此這裡是4G --查看系統體系架構# /bin/isainfo -kv64-bit sparcv9 kernel modules 注意,如果下載了solaris x86的介質,是無法安裝在sparc主機上的,並且sparc介質只能裝在真實機上,虛擬機器無法類比 --查看磁碟可用空間# df -k /tmp需要至少超過1G,目前30G # df -k安裝Oracle企業版需要4.68G的空間,目前197G 二、檢查軟體要求 --查看Solaris核心版本# uname -r5.10 $ cat /etc/releaseSolaris 10 5/09 s10s_u7wos_08 SPARC --需要安裝的包的listSUNWarcSUNWbtoolSUNWheaSUNWlibCSUNWlibmSUNWlibmsSUNWsprotSUNWtooSUNWi1ofSUNWi1cs (ISO8859-1)SUNWi15cs (ISO8859-15)SUNWxwfntSUNWcsl --檢查包# pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibm SUNWlibms SUNWsprot SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt SUNWcsl 如果檢查發現有未裝上的,掛載安裝盤進行安裝,用pkgadd命令 --安裝包pkgadd -d /path SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibm SUNWlibms SUNWsprot SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt SUNWcsl /path為光碟片掛載的路徑 三、建立使用者、使用者組 Oracle軟體安裝需要以下幾組使用者:The Oracle Inventory group (typically, oinstall)The OSDBA group (typically, dba)The Oracle software owner (typically, oracle)The OSOPER group (Optional. Typically, oper) -- oper組為可選的 --查看oinstall組資訊# more /var/opt/oracle/oraInst.locinventory_loc=/oracle/oraInventoryinst_group=oinstall --查看dba組資訊# grep dba /etc/groupdba::100:wcadmin,oracle --添加組# /usr/sbin/groupadd oinstall# /usr/sbin/groupadd dba --查看oracle使用者的許可權組# id -a oracleuid=103(oracle) gid=102(oinstall) groups=100(dba)
注意,不帶-a參數看不到最後一項內容,如# id oracle
uid=103(oracle) gid=102(oinstall)
--添加oracle使用者到oinstall與dba組# /usr/sbin/useradd -g oinstall -G dba oracle
--添加密碼檔案# passwd -r files oracle需要輸入密碼並確認 四、配置OS核心參數 --修改/etc/system set noexec_user_stack=1set semsys:seminfo_semmni=100set semsys:seminfo_semmns=1024set semsys:seminfo_semmsl=256set semsys:seminfo_semvmx=32767set shmsys:shminfo_shmmax=4294967296--實際值需大於SGA的值set shmsys:shminfo_shmmni=100 注意solaris 10上預設沒有安裝vim,可以使用vi或gedit,修改各參數值以達到安裝所需的最低要求/etc/system實際已經存在的值要比上面多,只修改羅列出的即可 --查看project id# su - oracle
$ id -puid=103(oracle) gid=102(oinstall) projid=3(default)
這裡與官方文檔裡面的值由出入,是default而不是group.dba,不過不影響順利安裝 --查看project# cat /etc/project
system:0::::user.root:1::::noproject:2::::default:3::::group.staff:10::::group.dba:100:Oracle default --如果沒有最後一行內容,需手動添加 五、建立相關路徑並賦予oracle讀寫權限 # mkdir -p /oracle# chown -R oracle:oinstall /oracle
# chmod -R 775 /oracle 六、配置環境變數 --查看shell類型$ echo $SHELL
/bin/sh --修改環境變數solaris的環境變數檔案是./.profile,注意與Linux的bash shell中的.bash_profile不同如oracle使用者的環境變數為/home/oracle/.profile# su - oracle$ TMP=/tmp$ TMPDIR=/tmp$ export TMP TMPDIR$ ORACLE_SID=orcl
$ ORACLE_BASE=/oracle$ export ORACLE_SID ORACLE BASE$ DISPLAY=192.168.1.181:0.0 --注意這裡的ip地址為有圖形介面的主機,不是db伺服器$ export DISPLAY$ umask 022 --確保未設定ORACLE_HOME和TNS_ADMIN環境變數(Oracle建議)$ unset ORACLE_HOME
$ unset TNS_ADMIN --設定完以上變數以後,可以用env命令查看一下$ env | more 注意,這隻是在當前session有效,並沒有寫入到.profile檔案中如果是通過編輯.profile檔案進行修改的,最後用. ./.profile使變更生效,注意,source命令在solaris上不可用 七、拷貝安裝介質 # /usr/sbin/mount -r -F hsfs /dev/dsk/c0t0d0s1 /dvd
八、安裝資料庫軟體 # /mount_point/database/runInstaller --如果提示無法找到命令,可以加./後運行注意,oracle使用者必須有掛載目錄的讀許可權,否則運行失敗 主要就是以上一些步驟,其實配置起來,我個人覺得要比Linux還要簡單,只是可能很多人第一次在solaris上裝oracle資料庫還不太習慣,萬事都有第一回嘛,試著搞一下,就有經驗了 在安裝資料庫時碰到的問題:1. swap不足由於實體記憶體為32G,但目前swap只給了4G,swap -l命令可以查看當前配置的swap大小。通過添加swap檔案並固化,重新運行runInstaller解決 2. 缺少OS相關patch:124861-15這個包主要是用於Oracle XML Developer’s Kit (XDK),SunOS 5.10 Compiler Common patch for Sun C C++ (optional),注意這裡說明是可選的,所以可以選擇ignore 解決swap不足後並忽略缺少patch的報錯後,順利安裝完資料庫軟體,接著就是dbca,與在其他平台上的步驟一致,就不詳細說明了 附錄:solaris解決swap不足的方法: 一、增加Swap
1. 成為超級使用者 $su - root
2. 建立swap檔案 #mkfile nn[klblm] /path/filename 如:#mkfile 100m swapfile
3. 啟用swap檔案 #/usr/sbin/swap -a /path/filename
swap檔案必��以絕對路徑來指定,filename指的是上一步建立的檔案
4. 固化swap,在/etc/vfstab檔案中記錄檔案的名字和Swap類型,如: /path/filename - - swap - no -
5. 效驗Swap檔案是否加上 /usr/sbin/swap -l
二、刪除swap
1. 成為超級使用者 $su - root
2. 使用swap -d 命令收回swap空間#/usr/sbin/swap -d /path/filename
3. 編輯/etc/vfstab檔案,去掉此swap(交換)檔案的實體
4. 從檔案系統中回收此檔案#rm swap filename
5. 當然,如果此swap(交換)空間不是一個檔案,而是一個分區,則需建立一個新的檔案系統,再掛接到原來的檔案系統上。
在CentOS 6.4下安裝Oracle 11gR2(x64)
Oracle 11gR2 在VMWare虛擬機器中安裝步驟
Debian 下 安裝 Oracle 11g XE R2