VMware Linux 下安裝 Oracle 11gR2 RAC


 

 文本:

文本
VMware Linnux 下安裝 Oracle 11g R2 RAC
虛擬機
    VMware下安裝Linux
        下載
            wmware server 2.0
                http://download.pchome.net/system/sysenhance/detail-32337.html
                wmware server 1.0.6 本在Win7下一啟動虛擬機就死機,選了WinXP兼容性也不行
        安裝配置
            節點1
                名稱:HISRAC1
                內容
                    2塊網卡
                        eth0
                            ip
                                192.168.10.10
                                    公用
                        eth1
                            ip
                                172.168.2.10
                                    心跳
                    2塊磁盤
                        本地磁盤50G
                            分區
                                sda1 2G
                                    交換分區
                                        物理內存為2GB~16GB時,交換空間等於物理內存大小
                                            查看交換分區大小: # /sbin/swapon -s
                                sda2 48G
                                    28G
                                        安裝Linux系統
                                    /u01 20G
                                        安裝Grid Instruction(10G)和Oracle程序
                            配置
                                如果是裸設備,要選“allocate all disk space now”;如果不是裸設備,可以不勾這個選項,以免浪費磁盤空間
                                virture device node選SCSI0:0
                            目錄:F:\Virtual Machines\HISRAC1\HISRAC1.vmdk
                        共享磁盤10G
                            分區
                                OCR和VOTE 1G(最少600M)
                                Oracle數據9G
                            配置
                                SCSI,要選“allocate all disk space now”
                                virture device node選SCSI2:1
                                勾選 independ
                            目錄:F:\Virtual Machines\share_disk\his_share.vmdk
                            安裝第一個節點時可先不創建,待把第一個節點Clone到第二個節點后,再創建
                    操作系統:Linux
                        New VMware Machine...|Custom|Linux|RedHeadLinux
                            Virture Machine name:HISRAC1
                            取消“Make this virtual machine private”里面的勾
                            網絡選橋接“use bridged networking”
                            I/O適配器選“LSI Login”
                        選上“Software Development/Web Server”2個組件,然后選上“Customize now”
                            Base System 里的組件全選上
                            勾選FTP和中文支持
                            不把這些這樣裝全的話,下面再裝VMwareTools時就很麻煩
                            virtualization 一定不要裝。我在真實服務器里面裝了這個東東之后,64G內存只能認出來32G,坑死人不償命啊
                        如果先裝了Linux6,會把分區表自動改為GPT格式,這樣如果想重裝Linux5,在分區那一步就會報錯。解決方法是使用Linux5安裝光盤啟動,在第一個界面上按“F5”選“Rescue”模式,就可進入Linux命令行,然后使用 parted 命令,再 select /dev/sda,再用 print 命令可看到分區表確實是gpt格式,使用 mklabel 命令,按提示輸入新的格式為 msdos即可
                    編輯.vmx
                        添加disk.locking = "false"
                            如果沒有這個,添加了共享磁盤之后,無法同時啟動2個節點,會報“failed to lock the file 錯誤
                        添加scsi2:1.deviceType = "disk" 以及: diskLib.dataCacheMaxSize = "0" diskLib.dataCacheMaxReadAheadSize = "0" diskLib.DataCacheMinReadAheadSize = "0" diskLib.dataCachePageSize = "4096" diskLib.maxUnsyncedWrites = "0"
                            其中scsi2:1要與共享磁盤的設置一致。如果沒有這個,兩個節點的共享存儲會不同步
                        測試共享存儲是否同步:在節點1使用fdisk 命令對  /dev/sdb 分區,保存之后,在節點2使用  fdisk -l 命令應該能夠立即看到效果
                    內存1.5G以上,不然不夠用
                服務
                    開通FTP功能
                        啟動FTP
                            安裝vsftpd
                                執行光盤/server/vsftpd-版本號.rpm
                                    如果在安裝Linux時已安裝了FTP就不需要這一步
                            [root@rac1 ~]# service vsftpd start
                        編輯/etc/vsftpd下的ftpusers和user_list文件
                            ftpusers里的root行加注釋
                        在Windows資源管理器里ftp://192.168.10.10/,右擊選“登陸...”,使用root用戶登陸
                安裝VMware Tools
                    首先啟動虛擬機,並且把CDRom里的光盤彈出
                    安裝VMware tools,成功后CDRom里會自動加載linux.iso
                    在虛擬機里的Linux系統的光盤里可以看到 VMware-tools*.tar.gz 壓縮包,將其解壓,並執行vmware-install.pl。安裝完之后,如果在/mnt下出現名為hgfs的文件夾,說明安裝成功
                    安裝了VMware Tools 就能從Windows下復制文本到虛擬機下了,比較方便
                    卸載:rpm -e VMwareTools
                打補丁
                    安裝補丁:加載linux安裝光盤,進入server文件夾 rpm -ivh kernel-headers* rpm -ivh compat-db-4* rpm -ivh libaio-0* rpm -ivh compat-libstdc++-33-3* rpm -ivh glibc-headers-2.5-12.i386.rpm rpm -ivh glibc-devel-2.5-12.i386.rpm rpm -ivh compat-gcc-34-3* rpm -ivh compat-gcc-34-c++-3* rpm -ivh libXp-1* rpm -ivh openmotif-2* rpm -ivh gmp* rpm -ivh libstdc* rpm -ivh libstdc++44-devel* rpm -ivh libstdc++-devel* rpm -ivh libgfortran* rpm -ivh gcc-4* rpm -ivh glibc-2.5-12.i686.rpm rpm -ivh libgomp-4.1.1-52.el5.i386.rpm rpm -ivh gcc-4.1.1-52.el5.i386.rpm rpm -ivh libaio-devel* rpm -ivh sysstat* rpm -ivh unixODBC*
                編輯/etc/hosts文件,添加
                    192.168.10.10  HISRAC1 192.168.10.11  HISRAC2 192.168.10.12  HISRAC1-VIP 192.168.10.13  HISRAC2-VIP 172.168.10.10  HISRAC1-PRIV 172.168.10.10  HISRAC2-PRIV 192.168.10.14  HISSCAN 192.168.10.15  HISSCAN 192.168.10.16  HISSCAN
                用戶
                    oradb
                        用戶名:oradb 組:oinstall、dba、asmdba
                        用於安裝Oracle  Database
                    oragrid
                        用戶名:oragrid 組:asmadmin、asmdba、asmoper
                        用於安裝  GI
                    命令: groupadd -g 501 oinstall groupadd -g 502 dba groupadd -g 504 asmadmin groupadd -g 506 asmdba groupadd -g 507 asmoper  useradd -u 601 -g oinstall -G asmadmin,asmdba,asmoper oragrid useradd -u 602 -g oinstall -G dba,asmdba oradb
            節點2
                名稱:HISRAC2
                從HISRAC1克隆
                    克隆到HISRAC2
                        關閉主節點Linux系統
                        把HISRAC1中所有文件復制到HISRAC2文件夾中,把HISRAC2目錄里所有帶“HISRAC1”字樣的文件的文件名改為HISRAC2
                        修改.vmx和.vmxf文件,把所有HISRAC1字樣替換成HISRAC2
                        將HISRAC2目錄下的.vmx添加到VMware控制台
                    啟動HISRAC2,配置Linux
                        將主機名改為HISRAC2
                            # hostname HISRAC2
                                重啟后失效!
                            修改/etc/sysconfig/network文件
                                重啟后生效
                        調整網絡配置
                            /etc/sysconfig/network-scripts下,網絡配置文件會自動產生一份新的,HISRAC1的原配置文件會被重命名為.bak文件。把.bak文件中的內容替換到新文件中,但是要保留新文件中的MAC地址,然后修改IP地址
                        修改/etc/hosts文件,將 127.0.0.1 HISRAC1改為HISRAC2
                        重新啟動系統
    Virtualbox
        Oracle 推出的Windows下的虛擬機,速度比VMware快,更省資源,支持共享存儲,共享文件夾功能也挺方便。用着比VMware更爽一點。
        共享文件夾
            需要先把“增強功能”裝上
            把Windows上的一個文件夾添加到“共享文件夾...”里
            在Linux里,在 /mnt 下創建一個文件夾 share,然后 mount -t vboxsf <本地共享文件夾名> /mnt/share
        安裝了GI之后,重啟虛擬機時,啟動到一半,本機系統突然自動重啟,試了幾次都是這樣。后來發現只要把虛擬機里面的網卡的“控制芯片”改為“Intel PRO/1000 MT 服務器(82545EM)”就沒問題了(橋接網卡用的是本機的“Intel(R) 82577LM Gigabit Network connection”)
        添加新磁盤
            在虛擬機配置里為虛擬機增加新磁盤
            進入虛擬機Linux系統
                把新加的磁盤添加到multipath的黑名單中
                    /etc/multipath.conf : blacklist {         devnode "^sda|sde|hd" }
                分區
                    例:fdisk /dev/sde
                格式化
                    例:mkfs.ext3 /dev/sde1
                加載
                    mkdir /u02 mount /dev/sde1 /u02
                開機自動加載
                    /etc/fstab : /dev/sde1 /u02 ext3 defaults 0 0
        添加網橋網卡的時候,如果使用本機的真實網卡,當網卡無法插上網線的時候,本機無法ping通虛擬機。建議添加一塊虛擬網卡(方法:添加新硬件->網卡->廠商:Microsoft->Microsoft Lookback Adapter。然后把虛擬機的網卡都選擇這個微軟的Lookback Adapter
配置負載均衡和TAF
    負載均衡和TAF(透明故障轉移)有2種實現方法,一種是通過修改客戶端tnsnames.ora文件,另一種是在服務器上建立 Cluster Managed Service。可以不在服務端建立Service,直接配置客戶端連接數據庫服務。建立服務端Service的好處是所有配置都在服務端,當需要更改策略時,只需要修改服務端配置,而不需要去每個客戶端修改,客戶端配置文件也可以更簡單一些。服務端的負載均衡是根據服務器的實際負載情況而不像客戶單負載均衡只是隨機選擇一個節點。但是服務端的負載均衡是現在一個節點分配連接,當連接達到一定量之后,才把連接分配給其它節點。所以可以使用服務端Service+客戶端負載均衡的方案更好一些。
    客戶端負載均衡和TAF
        修改客戶端tnsnames.ora
            RACDBTAF =   (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.12)(PORT = 1521))       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.13)(PORT = 1521))       (LOAD_BALANCE = yes)     )     (CONNECT_DATA =       (SERVICE_NAME = zlhisdb)       (FAILOVER_MODE=           (TYPE=select)           (MOTHOD=basic)           (RETRIES=180)           (DELAY=5)       )     )   )
    服務端負載均衡和TAF
        創建Cluster Managed Services
            使用企業管理器的圖形界面: 使用sys或system登錄企業管理器
                在 DataBase | Availabiliy 選項卡里,點擊 Cluster Managed Database Services 鏈接
                Cluster 用戶登錄使用 oradb 操作系統用戶,Database 登錄使用 sys 數據庫用戶
                點擊 Create Service 按鈕
                填表單: service name 隨便起一個,例如zlhisdbtf TAF 模式選 Basic Load Balanced Goal 選 Long 勾選 Enable Load Balancing Advisory,選擇 Throughout 勾選 Enable Fast Application Notification Consumer Group Mapping 選 DEFAULT_CONSUMER_GROUP
                點擊OK創建服務
                企業管理器的創建服務其實也是調用srvctl命令,命令為bin/srvctl add service -d zlhisdb -s zlhisdbtf -r 'zlhisdb1,zlhisdb2' -P BASIC。注意這個命令只指定了TAF策略為BASIC,但是並沒有指定failover_method 和 failover_type。創建完之后,使用select * from dba_services可以看到這兩個屬性值都NONE。這樣其實並沒有實現TAF。  雖然可以在創建服務之后再使用 execute dbms_service.modify_service (service_name => 'hiscen', aq_ha_notifications => true, failover_method => dbms_service.failover_method_basic, failover_type => dbms_service.failover_type_select, failover_retries => 180, failover_delay => 5, clb_goal => dbms_service.clb_goal_long); 來指定failover_method 和 failover_type,但是重啟服務器之后這兩個值就又會變為NONE了,所以不要使用圖形界面來創建Service,而是直接使用命令行去創建。
            使用命令行創建
                創建服務: bin/srvctl add service -d zlhisdb -s zlhisdbtf -r 'zlhisdb1,zlhisdb2' -P BASIC -e SELECT -m BASIC
                啟動服務: bin/srvctl start service -d zlhisdb -s zlhisdbtf
        確認服務狀態
            查看配置
                srvctl config service -d db-name [-s service-name] [-a]
            設置服務是否自動啟動
                srvctl enable/disable service -d <db-name> -s <service-name> -i instance-name
            啟動服務
                srvctl start service -d <db-name> -s <service-name> -i instance-name  -o start-option -c connect-string -q
            查看狀態
                srvctl status service -d db-name -s service-name -f -v
                crs_state -t -v
            查看SCAN偵聽器狀態
                srvctl status scan_listener srvctl config scan_listener srvctl config scan
            以system用戶登錄sqlplus
                select * from dba_services
                    確認failover_method 和 failover_type值不是空或NONE
                show parameter service
        客戶端配置
            只需要指定服務名為 zlhisdbtf 並添加2個vip地址就行了
            客戶端負載均衡和服務端負載均衡並不矛盾,可以都設置,這樣會先在客戶端隨即選擇一個服務器節點去連接,而服務器端收到連接請求后還會再根據負載情況再決定連接哪個節點,這樣效果更好
    驗證TAF
        新建名為TEST2的用戶, 使用TEST2 登錄  PL/SQL Developer,新建一個表並查詢數據
        使用 system 登錄 PL/SQL Developer
            select t.INST_ID, t.USERNAME, t.FAILOVER_TYPE, t.FAILOVER_METHOD, t.FAILED_OVER, t.STATUS, t.STATE   from gv$session t  where t.USERNAME in ('TEST2');
                確認failover_method 和 failover_type值不是空或NONE
                INST_ID屬性是節點編號,值為1表示連接到了節點1上,關閉節點1,再在上一步連接了TEST2用戶的PL/SQL Developer 里查詢數據,經過短暫的時延之后查詢成功執行,不會報錯
                再次查詢 gv$session,會發現INST_ID變為2,也就是節點1故障之后,連接轉移到了節點2上了
安裝 Oracle 的 Grid Instruction(GI)
    創建並加載共享存儲
    配置多路徑(可選,一般真實服務器環節會配置多路徑)
        安裝多路徑支持包,在Linux安裝盤的Server文件夾里執行: rpm -ivh device-mapper-multipath-0.4.7-34.el5.i386.rpm
        編輯 /ect/multipath.conf
            將黑名單默認的*改為^sda|hd,意思是把默認全屏蔽改為只屏蔽系統盤sda和光盤hd: blacklist {  devnode "^sda|hd" }
        使用命令 multipath -F 和 multipath -v3刷新設備列表
        指定映射順序
            使用命令  multipath -ll 列出多路徑設備,根據括號里的設備號,一一指定設備與 /dev/mpathn的映射關系,兩個節點的映射關系必須一致
                multipath {   wwid   36005076802808555f000000000000000   alias   mpath0  } multipath {   wwid   36005076802808555f000000000000001   alias   mpath1  }
            這個步驟是必須的,因為在創建  ASM 分區的時候,ASM卷是與 mpathn 進行映射的,如果這步沒有指定映射關系,2個節點的映射就可能不同,或者碰巧相同,但是重啟之后就不同了,將會導致2個節點的VOL1映射到不同的磁盤上,后果很嚴重
        完整的  /ect/multipath.conf 的例子
            blacklist {     devnode "^sda|hd" } multipaths {     multipath {      wwid   36005076802808555f000000000000000      alias  mpath0     }     multipath {      wwid   36005076802808555f000000000000001      alias  mpath1     }     multipath {      wwid   36005076802808555f000000000000002      alias  mpath2     } }
    安裝ASM
        查看Linux系統內核: # uname -rm
        下載與系統內核匹配的安裝包
            oracle asm lib
                http://www.oracle.com/technetwork/server-storage/linux/downloads/rhel4-092650.html
                http://www.oracle.com/technetwork/server-storage/linux/downloads/rhel5-084877.html
                下載並安裝如下組件: oracleasm-support-2.1.7-1.el4.i386.rpm oracleasm-2.6.18-194.el5-2.0.5-1.el5.i686.rpm oracleasm-2.6.18-194.el5debug-2.0.5-1.el5.i686.rpm oracleasm-2.6.18-194.el5-debuginfo-2.0.5-1.el5.i686.rpm oracleasm-2.6.18-194.el5PAE-2.0.5-1.el5.i686.rpm oracleasm-2.6.18-194.el5xen-2.0.5-1.el5.i686.rpm oracleasmlib-2.0.4-1.el4.i386.rpm
                    安裝順序: rpm -ivh oracleasm-support-2.1.7-1.el4.i386.rpm rpm -ivh oracleasm-2.6.18-194.el5-2.0.5-1.el5.i686.rpm rpm -ivh oracleasmlib-2.0.4-1.el4.i386.rpm
        配置: # /usr/sbin/oracleasm configure -i Default user to own the driver interface []: oragrid Default group to own the driver interface []: asmadmin Start Oracle ASM library driver on boot (y/n) [n]: y Scan for Oracle ASM disks on boot (y/n) [y]: y Writing Oracle ASM library driver configuration: done
        啟動ASM服務:(所有節點) # /etc/init.d/oracleasm start
            也可以使用圖形界面的服務管理器
            注意剛剛裝完ASMLib時,服務是未啟動狀態,這時除了 oracleasm configure 命令之外,其它命令全部都不好用,而且oracleasm listdisks還不報錯,只是輸出為空,這個很有迷惑性。切記要先確認服務已經啟動,再進行創建磁盤等操作
        創建ASM磁盤(只主節點): oracleasm createdisk VOL1 /dev/sdb1
            啟用多路徑的情況下,要做一些改變
                在真實的存儲上,如果配置了多路徑,分區時的路徑類似 fdisk  /dev/mapper/mpath0。之后,要使用multipath -F 和 multipath -v3 來刷新。之后創建ASM分區時,則是 oracleasm  createdisk VOL1 /dev/mapper/mpath0p1
                同樣,在沒配置多路徑之前,插入U盤系統會自動掛載,但是配置了多路徑之后,自動掛載會失敗(因為自動掛載使用的命令是 mount /dev/sdh1 /media/disk),需要使用命令 mount /dev/mapper/mpath3p1 /mnt/usb 來加載
                編輯 /etc/sysconfig/oracleasm 文件: ORACLEASM_SCANEXCLUDE="sd"
                    因為已經把ASM配到多路徑(/dev/mapper/mpathn)下,所以告訴ASM不要再掃描sd 和 hd開頭的磁盤了。這步是必須的,否則當增加了一個磁盤(或者僅僅是插入一個U盤)都會導致oracleasm出錯,在安裝GI時,也會認不出ASM磁盤分區。切記切記!!
        獲取新創建的節點(所有節點): oracleasm scandisks
        驗證創建是否成功(所有節點): oracleasm listdisks
            注意嘗試重啟 oracleasm 服務后,再次使用 oracleasm listdisks 命令,看看磁盤是否丟失
        出錯時……
            可以使用 oracleasm deletedisk  命令刪除磁盤重建
            如果在刪除ASM盤時出現 Device "/dev/sdc1" is already labeled for ASM disk ""  錯誤
                dd if=/dev/zero of=/dev/sdc1 bs=1024 count=100
    安裝GI
        設置ssh
            在主節點上以oragrid用戶身份生成用戶的公匙和私匙(主、副節點相同操作)
                # su - oragrid $ mkdir ~/.ssh $ chmod 700 ~/.ssh $ ssh-keygen -t rsa $ ssh-keygen -t dsa
            合並密鑰文件(主節點操作)
                首先確保 HISRAC1 和 HISRAC2 可互相ping得通
                cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys ssh HISRAC2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys ssh HISRAC2 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys scp ~/.ssh/authorized_keys HISRAC2:~/.ssh/authorized_keys
            設置 ssh date(主、副節點相同操作)
                配置時間服務器
                    編輯 HISRAC1 /etc/ntp.conf
                        server 127.127.1.0 fudge 127.127.1.0 stratum 11 driftfile /var/lib/ntp/drift broadcastdelay 0.008
                        將 ntpd 服務設為自動啟動
                    編輯 HISRAC2 /etc/ntp.conf
                        server 192.168.1.100(主節點公網IP) prefer driftfile /var/lib/ntp/drift broadcastdelay 0.008
                        或者可以在不啟動 ntpd  服務的狀態下,使用命令行 ntpupdate hisrac1 將本地時間調整到與 hisrac1 一致
            啟用ssh(所有節點)
                以oragrid身份執行某個命令,例如  date: ssh HISRAC1 date ssh HISRAC2 date ssh HISRAC1-priv date ssh HISRAC2-priv date
            驗證是否成功: 在主節點使用命令 ssh hisrac2 ls,不需要鍵入hisrac2的密碼就能執行
            可以使用GI安裝向導里的一鍵創建SSH的功能,非常方便
        安裝GI
            准備
                修改配置文件(所有節點)
                    編輯/etc/sysctl.conf
                        kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 6815744 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576
                        使其生效: # sysctl -p
                    編輯 /etc/security/limits.conf
                        oragrid soft nproc 2047 oragrid hard nproc 16384 oragrid soft nofile 1024 oragrid hard nofile 65536 oradb soft nproc 2047 oradb hard nproc 16384 oradb soft nofile 1024 oradb hard nofile 65536
                    如果 /etc/pam.d/login 里不包含,則添加
                        session required pam_limits.so
                    編輯 /etc/profile
                        if [ $USER = "oragrid" ] || [ $USER = "oradb" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi
                            注意“]"前面必須要有一個空格,否則會造成語法錯誤!(從來沒見過這么變態的語法)
                            另外需要注意的是,我們往往會在Windows系統上准備好一個包含所有配置和腳本的txt文件,傳到Linux系統里,然后復制、粘貼。在Windows系統上,一定要把這個txt文件另存為換行模式為“僅LF(Unix)”,而不是Windows默認的“CR+LF”模式,否則會造成語法錯誤!
                    編輯 /etc/csh.login
                        if ( $USER = "oragrid" ||  $USER = "oradb" ) then limit maxproc 16384 limit descriptors 65536 endif
            以oragrid用戶登錄: [oragrid@HISRAC1 grid]$ ./runInstaller
                SCAN Name:HIS_RAC
                    配置 SCAN需要DNS或GNS,沒有的話可以先在hosts文件里為ora_scan分配一個IP,把這步騙過去
                Cluster Nodes
                    public Nod Name        PrivateNodeName        Virtual Host Name rac1                           rac1-priv                      rac1-vip rac2                           rac2-priv                      rac2-vip
                cluster name: HISRAC SCAN name: HISRAC Oracle Base: /u01/gi/app/grid Software Location: /u01/gi/app/11.2.0/grid Inventory Directory:/u01/gi/app/oraInventory 組:oinstall
                    創建安裝目錄: #  cd /u01 # mkdir gi # chown -R oragrid:oinstall gi # chmod -R 775 gi
                在 Advance模式下,ASM  Password的文本框居然無法輸入,解決方法是點擊Help按鈕,打開Help窗體,將其拖拽到安裝程序窗體的下方,再關閉它,就能輸入了(一般都得重復2遍才行)
                Operating System group name: oinstall
                安裝路徑
                    Name: OraCrs11g_home Path: /u01/gi/product/csr_1
                語言那里添加中文
                網卡
                    把eth2設置為不使用
                    把eth0設置為public
                安裝到65%,向另一節點復制文件時比較慢,建議打開System Monitor,這樣可以看到當前網另一節點發送的每秒字節數,以及一共已經發送了多少字節
                以 root 身份運行 root.sh
                    /u01/gi/app/oraInventory/orainstRoot.sh
                    /u01/gi/app/11.2.0/grid/root.sh
                    先在主節點運行,成功后再在其它節點上運行,不要同時運行
                最后的配置
                    編輯 ~/.bash_profile 文件
                        在HISRAC1上: export ORACLE_HOME=/u01/gi/app/11.2.0/grid export ORACLE_SID=+ASM1
                        在HISRAC2上: export ORACLE_HOME=/u01/gi/app/11.2.0/grid export ORACLE_SID=+ASM2
                            SID可以使用grid/bin/asmca程序的第一個Tab頁里面的內容來查看
                        如果不配置這個的話無法使用asmcmd管理,會報conect to an idle instance的錯誤
                    創建密碼文件和ASMSNMP用戶
                        創建密碼文件
                            確認在2個節點上存在密碼文件/u01/gi/app/11.2.0/grid/dbs/orapw+ASM,如果不存在, 以oragrid用戶在2個節點上執行:$ /u01/gi/app/11.2.0/grid/bin/orapwd file=/u01/gi/app/11.2.0/grid/dbs/orapw+ASM password='密碼'
                        創建ASMSNMP用戶
                            在HISRAC1上 以oragrid用戶執行: $ /u01/gi/app/11.2.0/grid/bin/sqlplus / as sysasm SQL> create user asmsnmp identified by "密碼"; SQL> grant sysasm to asmsnmp; SQL> grant sysdba to asmsnmp;
                                只在節點1上執行即可
                            驗證: SQL> select * from gv$pwfile_users;
                        11.2.0.1版如果不進行這個配置,在使用dbca創建數據庫時,在其中的一步會報 Can not validate ASMSNMP password ora-01031 錯誤
                        如果是直接安裝的11.2.0.3版,則不需要做這個操作(安裝GI時安裝程序已經自定建立這個用戶了)
                出錯時……
                    GI
                        使用 ./runInstaller -debug 可獲得更詳細的錯誤信息
                        如果需要重裝GI,可使用 ./runInstaller -force 參數,這樣就可覆蓋安裝而不需要先進行卸載。如果不使用-force參數,安裝程序發現目錄不為空時會報錯
                    日志
                        app/crs/log/nodename/crsd/crsd.log
                    卸載GI
                        root.sh的反操作
                            在其它運行了root.sh的節點上運行: /u01/gi/app/11.2.0/grid/crs/install/rootcrs.pl -deconfig -verbose -force
                            卸載最后一個節點時執行: /u01/gi/app/11.2.0/grid/crs/install/rootcrs.pl -deconfig -verbose -force -lastnode
                                指定-lastnode參數會把OCR數據從ASM盤上刪除
                            執行/u01/gi/app/11.2.0/grid/deinstall/deinstall
                            刪除/tmp/.oracle 和 /var/tmp/.oracle 以及  /u01/gi
                驗證安裝是否成功
                    $ /u01/gi/app/11.2.0/grid/bin/crsctl check cluster -all $ /u01/gi/app/11.2.0/grid/bin/crsctl status resource -t
                        都顯示 "online"就是好用的意思
安裝Oracle數據庫
    安裝數據庫軟件(節點1操作)
        解壓縮的時候要把2個壓縮包全解壓縮一遍,變態。而且必須要使用root 用戶
        選 install database software only
        語言添加中文
        oracle base: /u01/db/app/oracle software location: /u01/db/app/oracle/product/11.2.0/dbhome_1
            節點2也要創建這個目錄並賦予權限
        DataBase Administrator 和 Operator Group 都是dba
    創建數據庫
        使用oradb運行: /u01/db/app/oracle/product/11.2.0/dbhome_1/bin/dbca
        sid:zlhisdb ORACLE_BASE: /u01/db/app/oracle ORACLE_HOME: /u01/db/app/oracle/product/11.2.0/dbhome_1
        The Database Control URL is https://HISRAC1:1158/em
        root.sh
            ORACLE_OWNER= oradb  ORACLE_HOME=  /u01/db/app/oracle/product/11.2.0/dbhome_1
    使用企業管理器
        在oradb用戶的~/.bash_profile里添加(或每次使用時在控制台臨時添加): export ORACLE_HOME: /u01/db/app/oracle/product/11.2.0/dbhome_1 export ORACLE_UNQNAME=zlhisdb export ORACLE_SID=zlhisdb1
            注意:ORACLE_HOME路徑的最后不能有“/”
            注意:ORACLE_SID應是節點的實例(例如zlhisdb1、zlhisdb2)名而不是集群的實例名(zlhisdb),而且必須是小寫的(主要是因為在節點上使用sqlplus / as sysdba 的方式連接節點實例,並startup時,會根據SID去找<$ORACLE_HOME>/dbs/init<$ORACLE_SID>.ora,而那個init<$ORACLE_SID>.ora文件是小寫的,所以如果$ORACLE_SID不正確或者僅僅是大小寫不匹配都找不到那個文件)
            注意:ORACLE_UNQNAME是給emctl用的,應寫集群的實例名
        執行:/u01/db/app/oracle/product/11.2.0/dbhome_1/bin/emctl start dbconsole
        在瀏覽器里 https://hisrac1:1158/em
        可使用  /u01/db/app/oracle/product/11.2.0/dbhome_1/bin/emctl status dbconsole 查看服務狀態
    查看節點連接到了哪個節點以及數據庫版本
        select * from v$instance
    一些必要的參數調整
        修改最大連接數
            查看最大連接數:select value from v$parameter where name = 'processes';
            修改連接數:alter system set processes = 300 scope = spfile;
        密碼
            密碼過期
                查看期限: select profile, limit from dba_profiles where resource_name = 'PASSWORD_LIFE_TIME'
                永不過期: ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
            失敗次數限制
                查看失敗次數限制: select profile, limit from dba_profiles where resource_name = 'FAILED_LOGIN_ATTEMPTS'
                修改為不限制: ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED;
Oracle 11gR2 11.2.0.3
    11.2.0.3是獨立的安裝包,可以先裝11.2.0.1再安裝11.2.0.3,不過如果是全新安裝,沒必要先裝11.2.0.1,直接安裝11.2.0.3即可
    與11.2.0.1的不同之處
        GI
            Cluster Name 和 SCAN name強制要求不允許有下划線
            安裝之前的驗證增加了幾條
                Package:cvuqdisk-1.0.9-1
                    要在2個節點上安裝GI安裝包/stage/cvucv/remenv/cvuqdisk-1.0.9-1.rpm
                    也可以點擊“fix up  & check agin"按鈕,按照提示使用 root 用戶執行 runfixup.sh 來安裝
                Task resolv.conf Integrity
                    如果DNS不可用,會報這個錯誤,可忽略
            安裝完之后不需要手工建立ASMSNMP用戶了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM