oracle 11g 靜默安裝----準備篇

說說靜默安裝. 就是可以不用GUI而安裝.貌似挺高端的.能省下不少服務器端的開銷.好處到此爲止. 其實我覺得就是裝高端人士必備啊. 人們一看用代碼行的就是比用圖形界面的高端.

 

安裝oracle 11g的話. 第一步還是必要的硬件、軟件包和環境變量的設置和檢查. 作爲高端的安裝這裏就按照官方文檔多多囉嗦幾句.

第一硬件的檢查和配置

1  liunx操作系統.

關於硬盤。 本人強力推薦萬能的LVM。關於她怎麼好。就不說了。這裏直說一點就是如果你覺得之前你設置的空間大小有問題。用LVM能調整而且不用重新格式化硬盤。對於一個在生產中的硬盤來說再好不過了。後面還會提到。

 

關於系統配置的選擇。我推薦最小安裝. 需要什麼包再安什麼包. 一般來說最小安裝都沒有安裝 X Window System server packages.所以GUI什麼的都沒有啦. 最好全命令行安裝的準備吧.

 

另外一點高端人事 估計都要坐在自己的辦公位上舒舒服服的遠程安裝. 所以SSH和OPENSSH 是必備的兩個包.

 

另外一點就就是交換空間的問題. 一般來說現在的服務器都是大於16G的內存 所以直接設置成16GB就好. 至於要在自己的機器上做個小實驗的數據庫見下表.

 

還有一點就是主機名的問題.一般服務器都是多網口,比如光線網線接口就有倆 電網線接口8個或者4個的.這樣一般的光口是留給存儲的. 電口才是真正的網口.

制定一塊網卡的靜態IP之後.把IP和你自己的主機名寫進/etc/hosts 這個文件裏 如下圖。

這裏面還有點要注意的. 不要把主機名寫到localhost裏面去.這樣以後會主動解析localhost下面的默認服務所以可能造成了EM打不開的效果.

還有另外一個就是 自己制定的靜態IP也不要在後面解析成localhost 這樣也容易出現解析錯誤。

總之就一個目的配置網絡環境.這樣在後續的安裝檢查的時候纔不會報錯.

 

2 安裝了操作系統後. 先作爲ROOT用戶登錄進行一些設置.

  2.1 檢查硬件環境.

         一共三項

       Memory Requirements 內存

      第一檢查內存大小 這個一般都是扯淡。 現在的機器內存沒有不夠。所以檢查內存大小一般都是爲了看交換分區大小是否符合要求做準備的。另外這裏的內存大小估計和你服務器買的時候所得到的內存大小不一樣。會少幾M,應爲有個叫kdump內核崩潰轉儲機制的傢伙會吃內存。至於這個傢伙爲什麼吃內存。我還沒有研究。反正看着說明是挺厲害的一個機制。所以先讓它佔用那些內存吧。用下面的命令查看當前可用內存。出來的結果是個以KB爲單位的數量。 # grep MemTotal /proc/meminfo

      第二 交換空間大小      

              一般所需交換空間如下表所示  現在的服務器一般來說都符合.

     

這裏面就遇到一個問題了。像前面說的萬一本屌一不小心把交換空間設置小了怎麼辦那?

重新裝系統?不~  這個方法只有在自己的電腦上能用而且低端不上檔次啊~ 如果是上生產的機器怎麼能總是重新裝系統那。 這裏分兩種情況。第一就是沒使用LVM的系統。第二是使用了LVM的系統。這裏的東西挺多的。本屌再開個帖子來寫。 但是用了LVM的系統絕對是很方便的就能調整各個分區的大小。

 

下面還要囉嗦一個重要的東西 Automatic Memory Management 自動內存管理

 

oracle 11g 之後 共享內存(/dev/shm) 至少要大於oracle實例的MEMORY_MAX_TARGET和MEMORY_TARGET 參數。什麼你說不大與這兩個不認識的混蛋會怎麼樣。 oracle不幹活~ 她會幽幽的來一句

 

ORA-00845: MEMORY_TARGET not supported on this system 意思跟老孃沒吃飽不幹活差不多。
 
怎麼餵飽她?
首先得看看本來給她多好吃了多少
# df -h /dev/shm/
然後加大共享內存區就行。一般加多少就行那? 那就要看MEMORY_MAX_TARGET 參數多大了。
# mount -t tmpfs shmfs -o size=7g /dev/shm
 

另外一個重要的參數就是file descriptors 文件描述符。

 

The number of file descriptors for each Oracle instance must be at least 512*PROCESSES

每一個oracle實例的文件描述符數至少是512乘以進程數。

如果沒有設置正確的話。

她會說ORA-01078: Failure in processing system parameters。 大概意思就是一下讓人家幹這麼多。人家幹不來啦~

 

一勞永逸的辦法就是修改/etc/fstab 在這個裏面添加如下條目

shmfs /dev/shm tmpfs size=7g 0

 

至於爲什麼。等回來我弄明白了再來說。

 

System Architecture 系統架構

這個事一般是扯淡的~ 服務器都是x86_64。 個人電腦都是i386構架的。基本沒有不能安裝。除非你弄個IOS或者安卓啥的。

 

 

Disk Space Requirements  磁盤空間

按目錄說 /tmp 要1GB 擴展和縮小/tmp方法和swap一樣後面再說。

另外單獨安裝數據庫軟件的企業版需要 4.35GB

而 數據文件則要1.7GB    

一個#df -h就能看出來 空間是不是夠。但是 這裏又來陷阱了~ 有可能你的服務器掛了存儲。而且就跟上面說的雙光口一樣都掛在存儲上~ 好了 你來個 #fdisk -l看看。 是不是很多一樣的硬盤出現了。 這裏就是需要一個多鏈路融合了。 這事以後解釋。

 

 

第二軟件環境的檢查和配置 

這裏麪包括下面五項

Operating System Requirements 操作系統環境

Kernel Requirements  內核環境

Package Requirements  軟件包

Compiler Requirements 編譯器

Additional Software Requirements 額外軟件需求 

下面分着說說

 

第一操作系統環境

一般來說支持oracle 11g的linux操作系統就那麼幾個。

Linux x86

– Asianux Server 3 SP2
– Oracle Linux 4 Update 7
– Oracle Linux 5 Update 2
– Oracle Linux 6
– Red Hat Enterprise Linux 4 Update 7
– Red Hat Enterprise Linux 5 Update 2
– Red Hat Enterprise Linux 6
– SUSE Linux Enterprise Server 10 SP2
– SUSE Linux Enterprise Server 11

Linux x86-64

– Asianux Server 3 SP2
– Oracle Linux 4 Update 7
– Oracle Linux 5 Update 2 (with Red Hat Compatible Kernel)
– Oracle Linux 5 Update 5
– Oracle Linux 6
– Oracle Linux 6 (with Red Hat Compatible Kernel)
– Red Hat Enterprise Linux 4 Update 7

– Red Hat Enterprise Linux 5 Update 2
– Red Hat Enterprise Linux 5 Update 5 (with the Oracle Unbreakable Enterprise Kernel for Linux)
– Red Hat Enterprise Linux 6
– Red Hat Enterprise Linux 6 (with the Oracle Unbreakable Enterprise Kernel for Linux)
– SUSE Linux Enterprise Server 10 SP2
– SUSE Linux Enterprise Server 11

On IBM: Linux on System z
– Red Hat Enterprise Linux 4 Update 8
– Red Hat Enterprise Linux 5 Update 4
– SUSE Linux Enterprise Server 10 SP3
– SUSE Linux Enterprise Server 11 SP1

上面是官方給的原表。下面推薦一個就是鳥哥一直在用的那個CentOS 這個系統對應的版本完全可以當作紅帽來安裝。作爲個人練手和小企業使用最好不過了。

如果你不知道你安的什麼系統。估計一般不會出這種狀況吧....

下面的命令能告訴你

#cat /proc/version 或者# lsb_release -id

出現之後和上面的系統對比如果是你們恭喜你能安裝啦。

第二點內核需求

這個更加扯淡了~ 如果你安裝了上面的系統中其中一種,這個內核要求基本可以忽略。除非你直接升級內核到了一個更高的版本。 具體需求如下

For Linux x86
■ On Oracle Linux 4 and Red Hat Enterprise Linux 4 2.6.9 or later
■ On Asianux Server 3, Oracle Linux 5, and Red Hat Enterprise Linux 5 2.6.18 or later
■ On Oracle Linux 6 2.6.32.100 or later
■ On Red Hat Enterprise Linux 6 2.6.32-71 or later
■ On SUSE Linux Enterprise Server 10 2.6.16.21 or later
■ On SUSE Linux Enterprise Server 11: 2.6.27.19 or later

For Linux x86-64
■ On Oracle Linux 4 and Red Hat Enterprise Linux 4 2.6.9 or later
■ On Oracle Linux 5 Update 5 2.6.32-100.0.19 or later
■ On Oracle Linux 5 Update 2 2.6.18 or later (with Red Hat Compatible Kernel)
■ On Oracle Linux 6 2.6.32-100.28.5.el6.x86_64 or later
■ On Oracle Linux 6 2.6.32-71.el6.x86_64 or later (w ith Red Hat Compatible Kernel)
■ On Red Hat Enterprise Linux 5 Update 5 with the Oracle Unbreakable Enterprise Kernel for Linux 2.6.32 or later
■ On Red Hat Enterprise Linux 6 with the Oracle Unbreakable Enterprise Kernel for Linux 2.6.32-100.28.5.el6.x86_64 or later

■ On Red Hat Enterprise Linux 6 2.6.32-71.el6.x86_64 or later
■ On Asianux Server 3, Oracle Linux 5 Up date 2, and Red Hat Enterprise Linux 5  Update 2 2.6.18 or later
■ On SUSE Linux Enterprise Server 10 2.6.16.21 or later
■ On SUSE Linux Enterprise Server 11 2.6.27.19 or later

For IBM: Linux on System z
■ On Red Hat Enterprise Linux 4 2.6.9 or later
■ On Red Hat Enterprise Linux 5 2.6.18 or later
■ On SUSE Linux Enterprise Server 10 2.6.16.60 or later
■ On SUSE Linux Enterprise Server 11 2.6.32.12 or later

 看見 or later了嗎 反正這個檢查就是完全可以忽略掉了吧。反正現在的內核都不會太老。

至於那個奇葩把內核弄到比這些版本還底那確實要看已看了。

如下命令得現在系統的內核參數。

# uname -r

什麼你的內核參數確實比較老~ 升級吧~ 

第三軟件包

這裏面需求的軟件包比較多了。各種版本的需求的軟件包又有所不同。這裏只列出來64位系統所需的軟件包

還要注意一點這裏列出的64位包和32位包是同時需要的。並且這裏有一個or later的關係後續的版本只要有兼容包是可以的。但是如果安裝了更高的版本在OUI檢查的時候可能會提示特定版本的軟件包沒有安裝。但是我們已經裝過更高版本的軟件所以可以忽略錯誤了。另外這裏面有個ksh可能會一直提示。 這裏只要你安了ksh不管什麼版本的都能過去。所以忽略他。

binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)

 

如果沒安裝 # rpm -q package_name或者 #yum install  package_name 拖拖的安裝完成就好。

不然就會出現一會卡着不動的狀況~ 這個還是很明顯的。

第四點編譯器

就一句話C++ 和C 上面的包也提到了。不多說了。沒有就安上。

第五點額外包

這個上面估計就一個ODBC有點用軟件安裝環境檢查的時候也會提到,所以也安裝上吧。

unixODBC-2.2.14-11.el6.i686 or later
unixODBC-devel-2.2.14-11.el6.i686 or later

另外一點就是JDK啦. 在linux下面怎麼能不安裝JDK那。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章