Vmware gsx 2.5+linux+oracle817(ops) 雙機安裝手冊
轉自: ITPUB論壇
作者:笑傲
Email:baobao521@21cn.com
QQ: 271761613
一,前言
希臘的圣哲蘇格拉底在大熟之季,帶著幾位弟子到麥垅去,無垠的田野在風中搖響黃金一甸的麥穗。蘇格拉底說:你們到麥地摘下一支自已眼見的最大的麥穗,許進不許退,我在盡處的坎坡等你們。幾位弟子謹聽規則之后,便下了麥田。到處都是又粗又大的麥穗,哪一支才是最大的呢?他們埋著頭率意前行,總認為最大的一支麥穗還未見著,還在前面。就這樣他們摘了又扔,總以為機會多多,不必過早定奪。久之,猛然聽到蘇格拉底蒼老如鐘的聲音:你們已到頭了!兩手空空的弟子這才如夢初醒,他們回望麥垅,無數大而沉的麥穗似乎滿帶著嘲弄的神情,在風中搖曳。蘇格拉底說:這麥地中肯定有一穗是最大的,但你們未必能碰見;即使碰見了,也未必能下此斷語。因此,最大的一穗正是你手中摘得的那一穗,而非其它。我們之于電腦技術,也如同在麥地中行走,尋找那最大的一支。也許對大多數的朋友來說,電腦技術的最大收獲就在追求技術的過程之中,請相信:“最大的一穗正是你手中摘得的那一穗”!
正文
呵呵,又說了些和內容無關的話,請個位見諒!回到這回的主題來,大家知道VMWARE GSX server 是VMWARE 公司推出的一款在PC 上摸擬各種操作系統的軟件,現在的版本是2.5,在它的官方文檔里提道了利用一種格式是pln 的磁盤,共享SCSI1 通道來實現windows 系統下的虛擬雙機CLUSTER+SQL SERVER,突破了大多數系統安裝愛好者受硬件環境的制約而無法實現CLUSTER,雙機,熱備等系統的安裝,真正實現了在一臺PC 機上就能玩CLUSTER 雙機,個人認為這一功能的出現使所有受場地,硬件制約而只聽說過的愛好者有了一個學習,練習的機會,實在是我們的福音呀!我對VMWARE 的景仰之情如黃河之水⋯⋯(打住,廢話這么多,快說正事了,這年頭看文章也要看一段廣告,我K 你?。┑?#8943;⋯,為啥沒有UNIX 環境下的CLUSTER 雙機啊,要知道高端服務器可都是UNIX 的天下呀!呵呵,別急,經過本人的無數次失敗和無數次難眠的夜晚,我大聲的宣布“牛奶會有的,面包會有的”終于有史以來,不,是有VMWARE 以來最最詳細的LINUX+ORACLE817(OPS)雙機安裝全攻略誕生了!廣告結束,let’s go
一,安裝所需軟件:
1, vmware gsx server 2.5 這個如果你也找不到,那我真的無話可說,你可去www.vmware.com 下載,然后申請試用序列號,你也可以在www.google.com 搜索,相信有你要的!
2, Redhat linux 6.2 這個是老了點,很多人可能要問,這么老的能行嗎?咋不用9 或者2.1 呀,呵呵,是呀,是老了點,但經我測試,7.1,7.2,7.3,8.0,9.0,2.1 達到同樣效果時,最省硬盤空間,最省硬件資源,在當今動者幾G 的系統面前,6.2 以不到600M 的安裝空間,短小精悍的性能成了我這次測試的異外之喜,相信我沒錯的,但如果你認為6.2 落后了,你要用9.0 或2.1 也完全可以!這取決于你PC 機的CPU,內存,硬盤,只要你有足夠強勁的硬件資源!如果你的硬件資源不是那么充足,那你就首選6.2 吧!你可以去www.google.com 搜索,會有很多下載點的!
3, Oracle817(ops) 這個你可去www.oracle.com 下載,http://otn.oracle.com/software/products/oracle8i/index.html
主要軟件就這些,當然在安裝過程中還需要些別的軟件,比如: telnet 軟件,虛擬光驅軟件等,這里我就不在介紹了,相信大家都有,也都會用!好了,讓我們開始我們充滿樂趣和挑戰的安裝吧!
二,安裝
1,vmware gsx server 2.5 的安裝和設置
安裝和簡單選默認既可,關閉光驅的“AUTORUN”功能時選“是”,查找虛擬盤時選“否”
然后要求重啟系統,vmware gsx server 2.5 就安裝完了,目前還沒漢化版,對E 文不太好的來說是有點煩,但也沒啥,下面有截圖教你如何設置!重啟后,我們打開VMWARE GSX 進行設置,
如圖:File—>NewàNew Virtual Machine 在彈出的窗口選“Custom”
接下來的窗口選“Other”,并命名為“Linux”
接下來的內存,我選“64M”因為要在一臺PC 上跑二個LINUX,所以選64M,我的PC 只有256M,緊張了些,如果你的內存大,那你可多選些!
接下來的網絡聯接請選“Bridged”磁盤空間請選默認的4G,可根據你的硬件資源選,但不要小于4G。
磁盤文件名就用默認的,點“Finish”就完成了虛擬機的設置。
然后我們對這臺虛擬機的配置做少許修改,因為使用中軟驅用的很少,我們把軟驅從配置中刪去。SettingsàConfiguration Editor
修改配置,刪除軟驅
好了,第一個LINUX 虛擬機“Linux”建好了,同理,我照此在建一個LINUX 虛擬機“Linux2”這樣在VMWARE GSX 界面里就有二個一樣配置的LINUX 虛擬機!這樣就符和CLUSTER 雙機的基本定義了。
接下來我們就要開始創建共享的PLN 磁盤,請用windows 命令提示符進入到VMWARE GSX 的安裝目錄,這里假設你是安裝在“C:\Program Files\VMware\VMware GSX Server”下,在這里你可以發現一個可執行文件“plainmaker.exe”這就是我們用來產生PLN 共享磁盤的工具,我們在命令提示符下敲如下命令:plainmaker d:\sys.pln 2000m 這條命令的意思就是在“d:\sys”的目錄下生成一個2G 的PLN 磁盤。
共享磁盤做好后,我們就得把它加入我們剛建立的那二個LINUX 虛擬機中,我們在VMWARE GSX界面里,選中一個虛擬機,點SettingsàConfiguration Editor 在彈出的增加硬件向導窗口點“ Add ”,然后選“Hard Disk”點“Next”
接下來的“Select a Disk”我們點第二個“Use an existing virtual disk”
然后我們們找到我們剛做好的那個PLN 磁盤
在“Select a disk mode”時,請一定要選第一項“persistent”
然后我們再點“Advanced”這一步極其重要!
在接下來的“Select a Disk Node”請千萬一定要選“SCSI 1:0”
選完后點“Finish”點“OK”這樣我們就完成了添加共享磁盤的操做,同樣對另一個LINUX 虛擬機做同樣的操作!做完這些我們需要對這2 個LINUX 虛擬機的配置信息文件(VMware Configuration File)進行編輯,它們的名字分別是:Linux.vmx,Linux2.vmx 、它們就在你存放LINUX 虛擬機的目錄里,我們用記事本就可以打開進行編輯。下面是其中之一的內容,請注意深黑字體的內容,這些就是加進去的,主要是告訴VMWARE GSX SCSI1:0 是共享的總線,在它上面的磁盤是共享磁盤,2 個文件都要加上這些內容,否者雙機不能共享磁盤,這個原理就相當于虛擬出一個磁盤陣列!
config.version = "6"
virtualHW.version = 2
localConsole = TRUE
displayName = "Linux"
guestOS = "linux"
ide1:0.present = TRUE
ide1:0.deviceType = "atapi-cdrom"
ide1:0.fileName = "I:"
scsi0:0.present = TRUE
scsi0:0.fileName = "Linux.vmdk"
scsi0.present = TRUE
memsize = 64
ethernet0.present = TRUE
draw = "gdi"
floppy0.present = FALSE
scsi1:0.present = TRUE
scsi1:0.deviceType = "plainDisk"
scsi1:0.fileName = "D:\sys.pln"
scsi1.present = TRUE
disk.locking = FALSE
scsi1.sharedBus = "virtual"
scsi1:0.mode = "persistent"
uuid.location = "56 4d 9c 46 c6 e7 af 51-a8 17 47 e7 e7 8c 64 f2"
ide1:0.startConnected = TRUE
tools.remindInstall = FALSE
tools.syncTime = FALSE
編輯好保存,到這里2 個LINUX 虛擬機就設置完了,下來,我們開始Red Hat Linux 6.2 的安裝了!
2,Red Hat Linux 6.2 安裝和Oracle817 Which OPS 雙機安裝而進行的相關設置
(1)Red Hat Linux 6.2 安裝
先準備好下載的6.2 ISO 文件,安裝好虛擬光驅軟件:Daemon Tools ,然后裝載ISO鏡像文件
先在VMWARE GSX 里選中一個LINUX 虛擬機,選SettingsàPreferences 在“Hot Keys”里選第2 個“Ctrl+Alt+Shift”這里選這個是為了在LINUX 里進行切換!
完成后,我們打開選好的LINUX 虛擬機,點“Power On”開始安裝6.2 ,打開電源后我們先用鼠標在畫面里點一下,然后按F2 鍵,進入VM 的“BIOS”設置啟動順序,(和我們平時用的真實機子一樣,只不過VM 的“BIOS”是PhoenixBIOS,很多品牌機用這個),把“CD-ROM Drive”設為第一選擇,然后把軟驅關閉
然后保存重啟,開始LINUX6.2 的安裝!
光盤引導后,出現6.2 安裝界面,選“English”點“Next”
接下來的鍵盤,鼠標都選默認,選完后來到“System installer”
接下來的安裝類型選“Custom”開始進行磁盤初始化。
我們可以看見有2 個磁盤“sda ,sdb”,我們只對“sda”進行分區,方案如下:/boot 100m , swap 128m ,/ 1859m /oracle 2000m 截圖如下:
分完后如下圖,對“sdb”這里不分區,請保持原樣!
接下來的“Choose partition to format”選默認既可!“Lilo configuration”選不創建啟動盤!
點“Next”進入“Network Configuration”請關閉“Configure using DHCP”我的配置如圖,你可根據你的實際情況進行配置。
我這里hostname 設為“dbs1”ip 為“11.0.10.12 255.255.255.0”接下來的時區我選”shanghai”
接著要設置ROOT 口令,“Authentication Configuration”選默認,這些完了后進入安裝程序選擇界面
這里要注意的是我們只選以下幾種“X Windows System”,“GNOME”,“Anonymous FTP Server”,“Emacs”,“Development”,“Kernel Development”,“Utilities”軟件包就可以了,其它的都不要選,當然你也可以根據你的需求選其它的軟件包,但務必包含上面6 個軟件包!選完后我們點“ Next”進行“Xconfiguration”的配置,先選顯示器,我們選擇“Generic Monitor”,顯卡選“Generic VGA compatible”“1024K”
選好后,點“Next”就開始略顯慢長的6.2 安裝了!
好了,我們可以放松一下了,休息一下,當然你也可以把另一個LINUX 虛擬機打開,和第一個用相同的配置,也開始安裝,當然這樣會很慢,但只要你的PC 足夠勁,我在我的P2 400MHZ 256M 的機子上同時安裝6.2 花了大約3 個多小時,我想大家的機子不至于比我的差吧,都P4 時代了呀!
看這就是我裝好后的截圖
帥吧!2 個LINUX 主機在跑!
(2)LINUX 主機信任機制設置
接下來我們就要對這二個LINUX 主機系統進行設置了!首先我們要這二個LINUX 主機定義它們的“ hostname”這點很重要,在ORACLE(OPS)里每個主機被認為是1 個節點(Node),每個節點用“hostname”來區別!這里第一個LINUX 主機的“ hostname”我定義為“dbs1”,第二個為“ins1”,因為在安裝時,我們在網絡設置時已做了定義。所以我們只需對它們各自的“/etc/hosts”文件進行一些修改,下面是dbs1 主機的“hosts”初始文件的內容
127.0.0.1 dbs1 localhost.localdomain localhost
我們把它改為下面的內容既可:
127.0.0.1 localhost localhost.localdomain localhost (注:這里刪去dbs1,是為了不和下面定義的dbs1 沖突,這步很重要,是我用血的代價總結出來的?。?br />
11.0.10.12 dbs1
11.0.10.13 ins1 (注:另一個LINUX 主機的“hostname”)
同理,ins1 的hosts 和dbs1 的一樣設置!
然后我們在2 個機子上互相ping 一下,如:在dbs1 上我們“ping ins1”如能ping 通,并能正確解析則表示配置沒問題,如有問題,請檢查網絡和“ hosts”文件是否正確!接下來我們要進行雙機安全和互相信任方面的設置,oracle(ops)能否安裝成功很大一部分取決于次處配置是否正確!
① 我們現取消掉LINUX 對root 用戶telnet 的限制!我們在#號下執行如下命令:# cd /etc/pam.d#vi login 在第2 行“auth required /lib/security/pam_securetty.so”前加#號注釋掉,保存退出。這樣ROOT 用戶就能用TELNET 登陸了
② 同樣為了保證各個用戶能用rlogin,rsh,我們對同目錄下(/etc/pam.d)的rlogin 文件也進行vi 編輯,同樣注釋掉第2 行“auth required /lib/security/pam_securetty.so”這樣各個用戶就能正常使用rlogin 了,當然你首先必需保證rsh 包安裝了,呵呵,這個你放心,一般都安裝了!只要你安裝6.2 時照我前面講的做了就沒問題,不信你用下面的命令查看:#rpm -aq |grep rsh
然后我們VI 編輯/etc/securetty 在其最后添上“rsh”這樣rlogin,rsh 可正常用了!
③為了ROOT 用戶能FTP 到主機上我們還得修改“/etc/ftpusers”這個文件,在文件里的“root”前加個#號注釋掉!雖然這一步并不是必要的,但我覺的有時候用到root 時會很方便的!
③ 接下來我要進行,2 個節點(注:也就是2 個LINUX 主機,這樣做是為了規范化,以后都用節點代表主機)信任機制設置,我們先在每個節點的“/etc”目錄下vi 建立名為“hosts.equiv”文件,其內容如下:
dbs1 #節點dbs1 的hostname
ins1 #節點ins1 的hostname
這樣2 個節點就建立了信任機制,這對于進行Cluster 雙機的安裝是極其重要的!它保證了2 個節點具有相同的用戶使用“rsh,rlogin,rcp”命令的權限,也就是信任被信任主機的所有用戶!這樣在2個節點上的除過root 用戶外,都可以互相“rlogin ,rsh ,rcp ”而不必輸入password 為了讓2 個節點的root 用戶也能這樣,我們還需在每個root 用戶的主目錄“/root”vi 建立.rhosts 文件,其內容為:
dbs1 root
ins1 root
這樣的話,root 用戶用“rlogin ,rsh ,rcp ”也不必輸入密碼,當然安全性是差了點!
做完這些我們可以在每個節點上執行“rlogin ,rsh ,rcp ”我舉幾個類子,比如我們在節點dbs1 上執行:#rlogin ins1 ( rlogin 登錄到節點ins1 上,可以看到我們可不用輸密碼就成功的以root 身份進入節點ins1)#rsh –l root ins1 cat /etc/hosts.equiv 以root 用戶,在登錄節點ins1 執行cat /etc/hosts.equiv 命令,這時在節點dbs1 的屏幕返回節點ins1上/etc/hosts.equiv 文件的內容)#rcp /tmp/test.txt ins1:/tmp(拷貝節點dbs1 的/tmp 目錄下的文件test.txt 到節點ins1 的/tmp 目錄下)呵呵,以上只是萬里長征走完的一小步,還有好多要設置呢!
(3)oracle817 which ops 相關設置
① LINUX 內核設置
因為red hat linux 沒有自己的Cluster 軟件,到2.1 才有,但對oracle ops 不支持,不像AIX,HPUX,SUN SOLARIS,TRUE 64 等都有支持OPS 的Cluster 軟件,因此, ORACLE在它的ORACLE 817里帶上了它的Cluster 軟件ORCM,既Oracle Cluster Manager 以提供對LINUX 上雙機安oracle ops的需求,來實現LINUX 平臺上ORACLE 數據庫的高可應用性,即常的HA!為了使用ORCM,必需對LINUX 的內核進行修改并重新編繹,ORCM 需要watchdog 的持,一般LINUX 裝好后提供了對watchdog的支持,但有些內核選項不是自動而是手工,或打開這就需我們進行調整!下面3 個內核參數需要修改為:
CONFIG_WATCHDOG=y
CONFIG_SOFT_WATCHDOG=y
CONFIG_WATCHDOG_NOWAYOUT=y
注:也就是“Disable watchdog shutdown on close”
下面是全部命令:
我們先進入“/usr/src/linux”vi 編輯Makefile 把“EXTRAVERSION= -5.0”改為“EXTRAVERSION=-5.0ops”這樣便于與原來的內核作區別!
然后執行“make menuconfig”
# cd /usr/src/linux
# make menuconfig 在彈出的菜單里選Character devices -à 可看到“[*]Watchdog Timer Support”已標記上*,這就說明“CONFIG_WATCHDOG=y”在內核里已獲得支持!在接下的Watchdog Card -à我們可以看見“[M] Disable watchdog shutdown on close”這里請把改為“[*] Disable watchdog shutdown on close”這就是“CONFIG_WATCHDOG_NOWAYOUT=y”然后確認“[*]Software Watchdog”[]里是*,這就是“CONFIG_SOFT_WATCHDOG=y”這些都做完后選擇“Exit”退出,這時問你是否保存新的內核配置,呵呵,一定要選“Yes”呀!
② 內核編繹
上面這些做完后,就可以開始編繹新配好的內核了,我們接著執行如下命令:
# make dep (建立編譯時所需的從屬文件)
# make clean (清除內核編譯的目標文件)
# make bzImage (編譯內核)
# make modules (編譯可加載模塊)
# make modules_install (編譯成功后,系統會在/lib/modules 目錄下生成一個2.2.14-5.0ops 子目錄,里面存放著新內核的所有可加載模塊。)
# cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.2.14-5.0ops (將新內核拷貝到/boot 目錄下)
# cp /usr/src/linux/System.map /boot/System.map-2.2.14-50ops (將System.map 文件拷貝到/boot 目錄下)
# /sbin/mkinitrd /boot/initrd-2.2.14-5.0ops.img 2.2.14-5.0ops (生成新的img文件)
這樣新的內核就可以使用了,你可以把老的內核,Sysmap 刪去,當然你也可以留下!
③ 配置/etc/lilo.conf 文件。
在該文件中修改如下幾行為:
image=/boot/vmlinuz-2.2.14-50.ops
label=linux
initrd=/boot/initrd-2.2.14-50ops.img
保存,重新啟動即可!雖然內核重建了,但設備文件watchdog 并沒生成,我們還的手工
創建watchdog 設備文件,用如下命令創建:
#mknod /dev/watchdog c 10 130
等oracle 用戶和dba 組建好后,改變其屬主為oracle:dba 既可!
④ 建立oracle cluster manager 管理分區和存放oracle 表空間,控制文,redo log file 的磁盤分區。
oracm 需要一個共享的raw 設備用來保存實時數劇,oracle ops 也需要把它的數據庫文件放在共享的raw 設備上,所以我們對共享磁盤進行分區, 然后建立相應的raw 設備文件。
首先,我們對共享磁盤進行分區,在2 個節點其中之一進行既可。方案如下:
我們共分3 個主分區(primary partition)和1 個包括10 個分區的擴展分區(extended)。
/dev/sdb1 10M (用來做oracle cluster manager 管理分區)
/dev/sdb2 500M (用來存放oracle 回滾數據表空間rollback)
/dev/sdb3 300M (用來存放oracle 系統表空間system)
/dev/sdb5 100M (用來存放oracle 工具表空間tools)
/dev/sdb6 100M (用來存放oracle 臨時表空間temp)
/dev/sdb7 200M (用來存放oracle 用戶表空間user)
/dev/sdb8 100M (用來存放oracle 索引表空間indx)
/dev/sdb9 10M (用來存放oracle 控制制文件control file)
/dev/sdb10 10M 同上
/dev/sdb11 8M (用來存放第1 個節點oracle 重做日志文件redo log file ,每個節點2 個redo log file)
/de/sdb12 8M 同上
/dev/sdb13 8M (用來存放第2 個節點的oracle 重做日志文件)
/dev/sdb14 8M 同上
這里要注意,系統表空間(system tablespace)一定不能少于275M,每個ORACLE 表空間,
控制文件,redo log file,都要是8KB 的倍數。
根據這個方案我們進行分區,#fdisk /dev/sdb 如截圖:
因為是共享磁盤,所以只需在1 個節點分區既可!分完區后,輸“w”保存分區即可!
⑤ 每個節點raw 設備文件的建立
根據下面方案建立RAW 設備文件,并與相應分區bound。
/dev/raw/raw1 /dev/sdb1
/dev/raw/rbs01 /dev/sdb2
/dev/raw/sys01 /dev/sdb3
/dev/raw/tools01 /dev/sdb5
/dev/raw/temp01 /dev/sdb6
/dev/raw/user01 /dev/sdb7
/dev/raw/indx01 /dev/sdb8
/dev/raw/ctl1 /dev/sdb9
/dev/raw/ctl2 /dev/sdb10
/dev/raw/log1_1 /dev/sdb11
/dev/raw/log1_2 /dev/sdb12
/dev/raw/log2_1 /dev/sdb13
/dev/raw/log2_2 /dev/sdb14
建立raw 文件的方法
#mknod /dev/raw/rbs01 c 162 2;mknod /dev/raw/sys01 c 162 3;mknod /dev/raw/tools01 c 162 4;mknod /dev/raw/temp01 c 162 5;mknod /dev/raw/user01 c 162 6;mknod /dev/raw/indx01 c 162 7;mknod /dev/raw/ctl1 c 162 8;mknod /dev/raw/ctl2 c 1629;mknod /dev/raw/log1_1 c 162 10;mknod /dev/raw/log1_2 c 162 11;mknod /dev/raw/log2_1 c 162 12;mknod /dev/raw/log2_2 c 162 13
oracle 用戶和dba 組建立后,請改變這些RAW 文件屬主為oracle:dba !這些在另一個節點也要做,而且要相同!然后我們修改2 個節點的“/etc/rc.d/rc.local”文件,在其最后添上如下內容:
raw /dev/raw/raw1 /dev/sdb1
raw /dev/raw/rbs01 /dev/sdb2
raw /dev/raw/tools01 /dev/sdb5
raw /dev/raw/sys01 /dev/sdb3
raw /dev/raw/temp01 /dev/sdb6
raw /dev/raw/user01 /dev/sdb7
raw /dev/raw/indx01 /dev/sdb8
raw /dev/raw/ctl1 /dev/sdb9
raw /dev/raw/ctl2 /dev/sdb10
raw /dev/raw/log1_1 /dev/sdb11
raw /dev/raw/log1_2 /dev/sdb12
raw /dev/raw/log2_1 /dev/sdb13
raw /dev/raw/log2_2 /dev/sdb14
重啟后,在2 個節點上執行# raw –aq 可以查看建好的raw 設備壯況到這里,有關raw 設備文件的建立即本就完了!
⑥ 在每個節點建立oracle 用戶和dba,oinstall 組
#groupadd dba (建dba 組)
#groupadd oinstall (建oinstall 組,安裝oracle 必需要有oinstall 組)
#useradd –d /home/oracle –g dba –G oinstall –m oracle (建立oracle 用戶,它的主目錄為/home/oracle)
#passwd oracle (給oracle 用戶設口令)
建好后,以oracle 用戶登錄,建立ora 目錄,用來放oracle 安裝文件。$mkdir –p ora ,然后用root 用戶改變“/oracle ”目錄的屬主為oracle:dba,#chown oracle:dba /oracle,這里/oracle 目錄就是oracle 安裝的主目錄!
⑦ 配置oracle 環境變量和linux 內核參數
vi 編輯每個節點“/home/oracle/.bash_profile”文件,添加如下內容:
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
export ORACLE_SID=ops1
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export NLS_LANG="simplified chinese"_china.zhs16cgb231280
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export CLASSPATH=.:$ORACLE_HOME/jdbc/lib/classes111.zip
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/dbs:/etc
export LD_ASSUME_KERNEL=2.2.5
vi 編輯“/etc/services”文件,在最后添上如下內容:
set shmsys:shminfo_shmmax=134217728 (注:256MX0.5X1024X1024)
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=128
set shmsys:shminfo_shmseg=16
set semsys:seminfo_semmni=128
set semsys:seminfo_semmns=2048
set semsys:seminfo_semmsl=2048
set semsys:seminfo_semume=64
set semsys:seminfo_semmnu=768
set semsys:seminfo_semmap=20
set semsys:seminfo_semopm=100
set semsys:seminfo_semvmx=32767
這些做完后,重啟既可!
4, oracle ops 的安裝
(1) 安裝vmware-tools for linux,你在哪個節點安裝oracle 你就在哪個節點裝vmwa
re-tools for linux,這里我選節點dbs1 安裝,安裝這個主要是為了使X windows用16 位色或24 位色顯示,也就是所謂的安裝顯卡!下面是安裝說明:
我們先以root 用戶登錄dbs1,然后執行:#startx,出現X windows 界面當然出現的是一個16 色的界面,這時我們點虛擬機Settings-àVmware Tools Instlall
在彈出的窗口選“Install”
安裝文件vmware-linux-tools.tar.gz 會出現在X windows 界面里“/mnt/cdrom”目錄,
這是自動出現的,如果沒如下圖的窗口出現,請到“/mnt/cdrom”目錄里找!
我們按“Alt+Ctrl+Shift+F2”這4 個組合鍵,切換linux 到另一個登錄窗口,以root 用戶登錄進入,我們拷貝“/mnt/cdrom”目錄下的“vmware-linux-tools.tar.gz”文件到“/tmp”目錄#cp /mnt/cdrom/*.gz /tmp,然后我們在“/tmp”目錄下執行#tar xvzf *.gz,解開文件包,會在“/tmp”目錄下生成“vmware-linux-tools”目錄,進入該目錄執行“./install.pl”安裝vmware-linux-tools ,安裝完后,退出Xwindows,然后重啟,再次以root 用戶進入執行startx 你會看到一個漂亮的Xwindows 界面!
(2) 安裝文件的處理
把從oracle 網站下好的oracle817 which ops 文件包linux81701.tar FTP 到節點dbs1 的“/oracle”目錄下,FTP 命令可以用win2000 自己的,如圖:登錄時用oracle 用戶,傳輸方式選bin 方式,并切換本地目錄到你放“linux81701.tar”的目錄,用“mput .gz”把文件傳入dbs1 的/oracle 目錄下!
傳完后,在“/oracle ”目錄下執行# tar xvf linux*.tar –C /home/oracle/ora (這樣做是因為磁盤空間不是很充足才這樣做的,麻煩一點)解完后,如用root 用戶執行請注意“/home/oracle/ora”目錄下“Disk1”的屬主一定要是:oracle:dba,如不是,請改成oracle:dba,最后請刪除linux81701.tar文件好給“/oracle”目錄騰出空間放oracle 文件!
(3) 安裝
我們從每個節點以oracle 用戶進入,到“/oracle”目錄,建product 目錄,再在這個
目錄下建8.1.7 目錄
$mkdir –p product
$cd product
$mkdir –p 8.1.7
這些完成后,從節點dbs1 以oracle 用戶執行startx 進入X windows 界面,在界面
里打開一個終端窗口,進入“ /home/oracle/ora/Disk1”目錄,執行“./runInstaller”就開始了oracle 的安裝?。▽K端窗口出現的map failed,請不用管它,這不會影響安裝的)
點“Next”出現安裝文件信息,指出源文件和目標文件,如正確請點“Next”
接著要你輸安裝ORACLE 的UNIX 組,請輸“oinstall”
然后彈出窗口要你用root 用戶執行“orainstRoot.sh”這個腳本文件,你可以再開一個終端窗口,執行$su – root 變成root 用戶,到“/oracle/product/8.1.7”目錄下執行“./orainstRoot.sh”執行完后,點“Retry”既可進行下一步
接下來要你選安裝文檔,請選第1 個“Oracle8i Enterprise Edition 8.1.7.0.1”
接著的安裝類型選“Custom”
接下的安裝文件選擇上請一定要選上“Oracle Parallel Servier 8.1.7.0.1”這就是我們說的ops,也就是oracle 并行服務,然后請去掉“Oracle HTTP Server 1.3.12.0.1a”這個用處不大, “Product Languages”請選上“Simplified Chinese” 其它的選默認既!
接下來的Java 環境選默認就行了
接下來的“OSDBA,OSOPER”在UNIX 屬組是dba 組
點“Next”出現“Cluster Node Selection”因為是雙機2 節點,所以只添另一個節點的名字ins1(也就是另一個節點的hostname )
點“Next”在安全認證里不選,直接點“Next”
然后點“Install”開始安裝!
安裝和Link 會很順利,Link 到62%時會很慢,請耐心等一會。
安裝和Link 成功后,會等很長一段時間,安裝程序開始拷貝安裝文件到另一個節點ins1。
經過慢長的等待,你的有很大耐心!另一個節點安裝完后會彈出一個窗口,要你用root 用戶執行“/oracle/product/8.1.7”目錄下的root.sh 文件,請用剛才執行“orainstRoot.sh”的終端窗口,在執行root.sh 文件前請先修改每個節點的root.sh 里的2 處錯誤,一處是:請在102 行把
RMF=/bin/rm –f 改為RMF=”/bin/rm –f”另一處是把156 行RUID=`/usr/bin/id|$AWK -F\( '{print }'|$AWK -F\) '{print }`改為RUID=`/usr/bin/id|$AWK -F\( '{print }'|$AWK -F\) '{print }'`看見沒是在最后多家一個` 符號。這些改完后在rcp 節點dbs1 的“/oracle/product/8.1.7/lib”目下的全部文件到節點ins1 的相同目錄下
$rcp /oracle/product/8.1.7/lib/* ins1:/oracle/product/8.1.7/lib
完成后在2 個節點都執行root.sh 文件了。執行完回安裝畫面點“ok”
這樣安裝就進行完了,我們退出安裝!
(4) oracle cluster manager 即oracm 的一些設置
oracle 安裝完后,我們可以在每個節點看見在“/oracle/product/8.1.7”有個“oracm”
目錄,這就是oracle 自己的cluster 軟件目錄,我們以oracle 用戶進入,在該目錄下的“admin”目錄下新建一個文件名為nmcfg.ora。如下:
$vi nmcfg.ora
其內容如下:
DefinedNodes=dbs1 ins1
CmHostName=dbs1 (注:節點ins1 上為ins1 )
CmDiskFile=/dev/raw/raw1
在2 個節點編輯完后,保存退出。然后我們進入每個節點的“/oracle/product/8.1.7/orac
m/bin”目錄vi 建立一個文件名為test.conf,其內容都為:
dbs1:/dev/raw/raw1
ins1:/dev/raw/raw1
保存!為了oracm 能順利的運行,我們還的編輯每個節點的“/etc/rc.d/rc.local”文件,添上:
insmod softdog soft_margin=60
然后在“/etc/profile”文件最后加上:
export ORACLE_HOME=/oracle/product/8.1.7
export PATH=$PATH:$ORACLE_HOME/oracm/bin
這些都做完后,請重啟!然后在每個節點的“/oracle/product/8.1.7/oracm/bin”目錄下執行wdttest1 命令(用root 用戶執行),如果過60 秒,每個節點都重新啟動的話,說明在“/etc/rc.d/rc.local”添加的“insmod softdog soft_margin=60”起做用了,并可證明watchdog 設備可正常工作!接著我們在每個節點的同樣目錄執行rdevtest test.conf如返回“ok”說明nmcfg.ora 配置正確,并且oracm 管理分區正常工作!如圖:這里是1.conf
這些都通過的話,我們就可以2 個節點的相同目錄(/oracle/product/8.1.7/oracm/bin)下執行“ocmstart.sh”運行oracle cluster manager 軟件!
(5)雙機oracle ops Net8 和初始化數局庫
當2 個節點的oracm 運行起來后,我們在節點dbs1 上以oracle 用戶登錄并打開X windows,然后我們在終端窗口里,在“/oracle/product/8.1.7/bin”目錄下執行“./netca”開始雙機cluster 下的Net8 的配置
選“Cluster configuration”點“Next”把2 個節點都選上!
接著點“Next”選“Listener configuration” 開始配置listener
接著點“Next”選“Add”
接著的畫面里選默認的listener 名“LISTENER”
通信協議選“TCP”
默認端口號為“1521 ”
是否配置另一個LISTENER 選“No”
這樣的話LISTENER 就配置完了
其它的選項可以不用去配置,如果想的話,請您自己去配,都很簡單,這里我就不多說了。接下來我們開始建庫,其實oracle ops 就是一個服務(server)跑2 個實類(instance)。
同樣在dbs1 的同上目錄執行“./dbassist”開始建庫
選數據庫類型時選“Oracle Parallel Servier configuration”
接著選“Create a database”然后點“Next”在接著的節點選擇上把2 個節點都選上創建數據庫類型選“Custom”
數據庫應用類型選“Multipurpose”
最大連接數據庫用戶數,就選默認吧,當然你也可以選大點的1000 等。
數據庫服務模式選“Dedicated Server Mode”
數據庫安裝選項,請都不要選,否則你會在極其變態安裝過程中瘋掉,我試了下全選,安裝了28 個小時多?。。?!除非你喜歡自虐?。?!
接下來的“Global Database Name ”請添“ops”下面的“SID Prefix”也為“ops”當
然你也可以添任意你喜喚的名字,這樣將會產生2 個實類(instance )名ops1,ops2?!癈hange Character Set”選“ZHS16CGB231280”
點“Next”,“Control File 1:,Control File 2:”填上我們在前面創建的raw 文件“/dev/raw/ctl1,/dev/raw/ctl2”
接下來的系統表空間(System),工具表空間(Tolols),用戶表空間(User),回滾表空間(Rollback),索引表空間(Indx),臨時表空間(Temporary)都填上我們前面創建的raw 文件:“/dev/raw/sys01,/dev/raw/tools01,/dev/raw/user01,/dev/raw/rbs01,/dev/raw/indx01,/dev/raw/temp01”
填完后我們點“Next”在“Redo log File ”分別在2 個節點dbs1,ins1 填上我們前面建好的raw 文件“/dev/raw/log1_1,/dev/raw/log1_2,/dev/raw/log2_1, /dev/raw/log
2_2”
接下來都選默認的選項,不選開“Enable Archive Log”
接下來的SGA 參數選默認的!
接下來的也選默認的
選完后點“Next”出現創建數據庫界面,選“Create database now”點“Finish”開始創
建數據庫。
在到95%時會彈出窗口說無法修改“/etc/oratab”文件,不用管它,點“ok”繼續!終于完成并彈出窗口,告訴你數據庫創建完,全局名是:ops, SID 是:ops1,(另一個節點ins1是ops2),SYS 密碼是:change_on_install,SYSTEM密碼是:manager。點“ok”完成
安裝!
然后我們在2 個節點上啟動listener,這時2 個節點的oracle 都已啟動!
為了驗證ops 是否跑起來,請在執行sql 命令:
sql>connect / as sysdba
sql>select * from v$active_instances;
我們會看到:
INST_NUMBER
------------------
INST_NAME
-----------------------------------------------------
1
dbs1:ops1
2
ins1:ops2
這就證明我們的ops 安裝完全成功!
注:
Vmware,GSX Server 是VMware 公司的商標。
ORACLE,oracle 8i ops 是ORACLE 公司的商標。
RedHat Linux 6.2 ,及以后各版本是RedHat 公司的商標。
Windows 2000 是Microsoft 公司的商標。
本文用到的其它軟件都是其公司的產品和商標!
原文轉自:http://www.anti-gravitydesign.com