Red Hat Linux 5.3 (虛擬機器) 上安裝 Oracle11g RAC
1. 使用者組及賬號設定
1.1. 在 root使用者環境下建立 OS 組(每個節點執行)
# groupadd ‐g 501 oinstall
# groupadd ‐g 502 dba
# groupadd ‐g 504 asmadmin
# groupadd ‐g 506 asmdba
# groupadd ‐g 507 asmoper
1.2. 建立安裝 oracle軟體的使用者 (每個節點執行)
# useradd ‐u 501 ‐g oinstall ‐G asmadmin,asmdba,asmoper grid
# useradd ‐u 502 ‐g oinstall ‐G dba,asmdba oracle
1.3. 為 grid及 oracle使用者設定密碼 (每個節點執行)
# passwd oracle
# passwd grid
2. 網路設定
2.1 定義 cluster name, 這是 11g特有的
2.2 定義每個節點的 public hostname
也就是本機的 host name, 比如 rac01,rac02. 這裡推薦建立網路卡 bonding (具體設定
略,active/passive).
2.3 定義 public virtual hostname, 一般建議為
2.4 開始修改所有節點的/etc/hosts (每個節點執行)
127.0.0.1 localhost.localdomain localhost
192.168.5.111 rac01
192.168.5.112 rac02
192.168.5.113 racvip01
192.168.5.114 racvip02
17.1.1.1 racpri01
17.1.1.2 racpri02
#single client access name(scan)
192.168.5.115 racscan
3. 各個節點時間同步
(所有節點設定,這裡是測試,所以兩個節點相互同步,不設定時間伺服器)
透過 nptdate或 rdate 設定各個節點時間同步
[root@rac01 etc]# chkconfig time‐stream on
[root@rac01 etc]# date
Tue Dec 28 13:23:40 CST 2010
然後在節點 2 設定與節點1 的時間同步排程。
[root@rac02 etc]# crontab ‐e
*/2 * * * * rdate ‐s 192.168.5.111
4. 配置 Linux 核心引數 (所有節點設定)
fs.aio‐max‐nr = 1048576
fs.file‐max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
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
5. 為 oracle 使用者設定 shell limits(每個節點執行) .
5.1 修改/etc/security/limits.conf
[root@rac01 etc]# cd /etc/security/
[root@rac01 security]# vi limits.conf
grid soft nproc 2047
grid hard nproc 32768
grid soft nofile 1024
grid hard nofile 250000
oracle soft nproc 2047
oracle hard nproc 32768
oracle soft nofile 1024
oracle hard nofile 250000
5.2 修改/etc/pam.d/login,如果不存在以下行,請加入
session required pam_limits.so
5.3 對預設 shell startup file 做變更,加入如下行到/etc/profi
if [ \$USER = "oracle" ] || [ \$USER = "grid" ]; then
if [ \$SHELL = "/bin/ksh" ]; then
ulimit ‐p 16384
ulimit ‐n 65536
else
ulimit ‐u 16384 ‐n 65536
fi
umask 022
fi
5.4 設定 SELinux為 disable (每個節點都設定).
# vi /etc/grub.conf
default=3
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.18‐128.el5xen)
root (hd0,0)
kernel /xen.gz‐2.6.18‐128.el5
selinux=0
6. 建立 Oracle Inventory Directory (每個節點執行)
[root@rac01 u01]# mkdir ‐p /u01/product/oraInventory
[root@rac01 u01]# chown ‐R grid:oinstall /u01/product/oraInventory
[root@rac01 u01]# chmod ‐R 775 /u01/product/oraInventory/
7. 建立 Oracle Grid Infrastructure home 目錄(在每個節點建立)
注意:
11g單例項如果需要使用 ASM, grid 也必須安裝,且必須放在 ORACLE_BASE 下,
11g RAC則不行, 它的 grid家目錄必須另外放在一個地方,比如/u01/grid .
# mkdir ‐p /u01/grid
# chown ‐R grid:oinstall /u01/grid
# chmod ‐R 775 /u01/grid
8. 建立 Oracle Base 目錄(在每個節點建立)
# mkdir ‐p /u01/product/oracle
# mkdir /u01/product/oracle/cfgtoollogs ‐‐ 確保軟體安裝後 dbca 可以執行
# chown ‐R oracle:oinstall /u01/product/oracle
# chmod ‐R 775 /u01/product/oracle
9. 建立 Oracle RDBMS home 目錄(所有節點執行)
# mkdir ‐p /u01/product/oracle/11.2.0/db_1
# chown ‐R oracle:oinstall /u01/product/oracle/11.2.0/db_1
# chmod ‐R 775 /u01/product/oracle/11.2.0/db_1
10. 準備 Oracle Grid Infrastructure 及 RDBMS software (主節點準備)。
11. 檢查 OS rpm 包(所有節點執行)
這裡是 Linux AS 5.4 32bit, 如果是 64bit,需要檢查以下的 Packages.
以下重複包名稱的部分是 64bit,註明 32bit 的是 32bit packages. 如果
是 32bit OS, 那麼重複包名的只需要 32bit 部分的包 。注意不同版本的
Linux 系統後面的版本不太一樣 。
binutils‐2.15.92.0.2
compat‐libstdc++‐33‐3.2.3
compat‐libstdc++‐33‐3.2.3 (32 bit)
elfutils‐libelf‐0.97
elfutils‐libelf‐devel‐0.97
expat‐1.95.7
gcc‐3.4.6
gcc‐c++‐3.4.6
glibc‐2.3.4‐2.41
glibc‐2.3.4‐2.41 (32 bit)
glibc‐common‐2.3.4
glibc‐devel‐2.3.4
glibc‐headers‐2.3.4
libaio‐0.3.105
libaio‐0.3.105 (32 bit)
libaio‐devel‐0.3.105
libaio‐devel‐0.3.105 (32 bit)
libgcc‐3.4.6
libgcc‐3.4.6 (32‐bit)
libstdc++‐3.4.6
libstdc++‐3.4.6 (32 bit)
libstdc++‐devel 3.4.6
make‐3.80
pdksh‐5.2.14
sysstat‐5.0.5
unixODBC‐2.2.11
unixODBC‐2.2.11 (32 bit)
unixODBC‐devel‐2.2.11
unixODBC‐devel‐2.2.11 (32 bit)
檢查方法:
[root@rac02 grid]# rpm ‐q ‐‐qf '%{NAME}‐%{VERSION}‐%{RELEASE} (%{ARCH})\n' binutils \
然後輸入:
compat‐libstdc++‐33 \
elfutils‐libelf \
elfutils‐libelf‐devel \
expat \
gcc \
gcc‐c++ \
glibc \
glibc‐common \
glibc‐devel \
glibc‐headers \
ksh \
libaio \
libaio‐devel \
libgcc \
libstdc++ \
libstdc++‐devel \
make \
pdksh \
sysstat \
unixODBC \
unixODBC‐devel
結果如下:
[root@rac01 u01]# rpm ‐q ‐‐qf '%{NAME}‐%{VERSION}‐%{RELEASE} (%{ARCH})\n' binutils \
> compat‐libstdc++‐33 \
> elfutils‐libelf \
> elfutils‐libelf‐devel \
> expat \
> gcc \
> gcc‐c++ \
> glibc \
> glibc‐common \
> glibc‐devel \
> glibc‐headers \
> ksh \
> libaio \
> libaio‐devel \
> libgcc \
> libstdc++ \
> libstdc++‐devel \
> make \
> pdksh \
> sysstat \
> unixODBC \
> unixODBC‐devel
binutils‐2.17.50.0.6‐9.el5 (i386)
compat‐libstdc++‐33‐3.2.3‐61 (i386)
elfutils‐libelf‐0.137‐3.el5 (i386)
elfutils‐libelf‐devel‐0.137‐3.el5 (i386)
expat‐1.95.8‐8.2.1 (i386)
gcc‐4.1.2‐44.el5 (i386)
gcc‐c++‐4.1.2‐44.el5 (i386)
glibc‐2.5‐34 (i686)
glibc‐common‐2.5‐34 (i386)
glibc‐devel‐2.5‐34 (i386)
glibc‐headers‐2.5‐34 (i386)
ksh‐20080202‐2.el5 (i386)
libaio‐0.3.106‐3.2 (i386)
libaio‐devel‐0.3.106‐3.2 (i386)
libgcc‐4.1.2‐44.el5 (i386)
libstdc++‐4.1.2‐44.el5 (i386)
libstdc++‐devel‐4.1.2‐44.el5 (i386)
make‐3.81‐3.el5 (i386)
package pdksh is not installed ‐‐‐ pdksh 沒有安裝
sysstat‐7.0.2‐3.el5 (i386)
unixODBC‐2.2.11‐7.1 (i386)
unixODBC‐devel‐2.2.11‐7.1 (i386)
查詢一些文件,pdksh 這個包可以不用安裝。
12. 為 Oracle RAC 準備共享儲存
在三個分開(三個物理磁碟)的 failure groups 下需要至少 2GB 的磁碟空間用於
Oracle Clusterware檔案 (Oracle Cluster Registry and voting disk) .
‐All of the devices in an Automatic Storage Management disk group
should be the same size and have the same performance characteristics.
‐A disk group should not contain more than one partition on a single physical disk device.
‐Using logical volumes as a device in an Automatic Storage Management disk group
is not supported with Oracle RAC.
‐The user account with which you perform the installation (oracle) must have
write permissions to create the files in the path that you specify.
共享磁碟劃分規劃(因為在硬體上做了 RAID1,所以這裡沒有規劃映象磁碟組)
Block Device ASMlib Name Size Comments
/dev/sdb1 OCR_VOTE01 10GB ASM Diskgroup for OCR and Voting Disks
/dev/sdc1 ASM_DATA01 10GB ASM Data Diskgroup
/dev/sdd1 ASM_DATA02 4GB ASM Flash Recovery Area Diskgroup
這裡是虛擬機器安裝 RAC, 所以需要設定共享磁碟檔案 (可以透過以下命令,也可以透過
VMware 介面新增,注意選擇磁碟時候需要選取 SCSI 1:1,SCSI 1:2,依次類推,多少個磁碟選擇
多少個)。如果是實體 Storage,這一步不需要。
A. 建立一個資料夾用於存放共享磁碟檔案 : D:\Tony\asmshared
B. 執行下面命令生成共享檔案
C:\>cd C:\Program Files\VMware\VMware Server
C:\Program Files\VMware\VMware Server\vmware‐vdiskmanager.exe ‐c ‐s 10Gb ‐a
lsilogic ‐t 2 "D:\Tony\asmshared"\ShareDiskOCR.vmdk
C:\Program Files\VMware\VMware Server\vmware‐vdiskmanager.exe ‐c ‐s 10Gb ‐a
lsilogic ‐t 2 "D:\Tony\asmshared"\ShareDiskData.vmdk
C:\Program Files\VMware\VMware Server\vmware‐vdiskmanager.exe ‐c ‐s 4Gb ‐a
lsilogic ‐t 2 "D:\Tony\asmshared"\ShareDiskFlash.vmdk
這樣就生成了新的虛擬磁碟,其中‐s 10Gb 表示磁碟容量,‐a 表示介面型別 lsilogic 即 scsi 接
口,‐t 2 的意思是預分配磁碟空間,可以用‐t 0 選項,這樣就不會佔用空間了,實際用多少就多少.
可以看到在 D:\Tony\asmshared 生成了 6 個檔案。
關閉 Linux 系統及虛擬機器 :
到虛擬機器目錄比如 D:\Tony\rac01,直接編輯*.vmx 檔案, 加上下面語句(所有虛擬機器節點).
disk.locking = "FALSE"
diskLib.dataCacheMaxSize = "0"
scsi1.sharedBus = "virtual"
scsi1.present = "TRUE"
scsi1.virtualDev = "lsilogic"
scsi1:1.present = "TRUE"
scsi1:1.fileName = "D:\Tony\asmshared\ShareDiskOCR.vmdk"
scsi1:1.mode = "independent‐persistent"
scsi1:1.deviceType = "disk"
scsi1:1.redo = ""
scsi1:2.present = "TRUE"
scsi1:2.fileName = "D:\Tony\asmshared\ShareDiskData.vmdk"
scsi1:2.mode = "independent‐persistent"
scsi1:2.deviceType = "disk"
scsi1:3.present = "TRUE"
scsi1:3.fileName = "D:\Tony\asmshared\ShareDiskFlash.vmdk"
scsi1:3.mode = "independent‐persistent"
scsi1:3.deviceType = "disk"
注意:這個檔案中的每一行都不能重複,否則會報錯。
最後開啟虛擬機器程式,檢視每個節點虛擬機器 Devices部分。
當然也可以透過VMWare圖形介面建立磁碟,注意共享磁碟選擇SCSI 1而不是0才可以。
這裡不詳細介紹。
13. 劃分共享磁碟 (在一個節點上執行 fdisk)
[root@rac01 ~]# fdisk ‐l
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 127 1020096 83 Linux
/dev/sda2 128 1402 10241437+ 83 Linux
/dev/sda3 1403 1912 4096575 82 Linux swap / Solaris
/dev/sda4 1913 5221 26579542+ 83 Linux
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/sdc: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdc doesn't contain a valid partition table
Disk /dev/sdd: 4294 MB, 4294967296 bytes
255 heads, 63 sectors/track, 522 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdd doesn't contain a valid partition table
[root@rac01 ~]#
分別對 /dev/sdb, /dev/sdc, /dev/sdd 進行磁碟分割槽。
最後結果如下:
[root@rac01 ~]# fdisk ‐l
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 127 1020096 83 Linux
/dev/sda2 128 1402 10241437+ 83 Linux
/dev/sda3 1403 1912 4096575 82 Linux swap / Solaris
/dev/sda4 1913 5221 26579542+ 83 Linux
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 1305 10482381 83 Linux
Disk /dev/sdc: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdc1 1 1305 10482381 83 Linux
Disk /dev/sdd: 4294 MB, 4294967296 bytes
255 heads, 63 sectors/track, 522 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdd1 1 522 4192933+ 83 Linux
[root@rac01 ~]#
重新啟動節點 1,2 ,檢視是否都顯示掛載正常。
14. 安裝及配置 ASMLib (每個節點都需要安裝)
從Oracle OTN ASMLib網頁下載ASMLib包, 使用uname –a檢視系統核心版本, 下載的ASMLib
版本要與之匹配。
[root@rac01 ~]# uname ‐a
Linux rac01 2.6.18‐128.el5 #1 SMP
檢視是否有安裝過:
[root@rac01 ~]# rpm ‐qa | grep oracleasm
匹配的 ASMLib 檔案如下 (以下也是檔案安裝順序):
oracleasm‐support‐2.1.3‐1.el5.i386.rpm
oracleasm‐2.6.18‐128.el5‐2.0.5‐1.el5.i686.rpm
oracleasmlib‐2.0.4‐1.el5.i386.rpm
[root@rac01 oracleasm]# rpm ‐ivh oracleasm‐support‐2.1.3‐1.el5.i386.rpm
warning: oracleasm‐support‐2.1.3‐1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID
1e5e0159
Preparing... ########################################### [100%]
1:oracleasm‐support ########################################### [100%]
[root@rac01 oracleasm]# rpm ‐ivh oracleasm‐2.6.18‐128.el5‐2.0.5‐1.el5.i686.rpm
warning: oracleasm‐2.6.18‐128.el5‐2.0.5‐1.el5.i686.rpm: Header V3 DSA signature: NOKEY, key ID
1e5e0159
Preparing... ########################################### [100%]
1:oracleasm‐2.6.18‐128.el########################################### [100%]
[root@rac01 oracleasm]# rpm ‐ivh oracleasmlib‐2.0.4‐1.el5.i386.rpm
warning: oracleasmlib‐2.0.4‐1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
Preparing... ########################################### [100%]
1:oracleasmlib ########################################### [100%]
同樣在其他節點也執行。
15. 以 root 使用者配置 ASMLib (每個節點都需要安裝)
If using user and group separation for the installation (as shown in this guide), the ASMLib driver
interface owner is grid and the group to own the driver interface is asmdba (oracle and grid are
both members of this group). These groups were created in section 2.1. If a more simplistic
installation using only the Oracle user is performed, the owner will be oracle and the group
owner will be dba.
[root@rac01 init.d]# /etc/init.d/oracleasm configure
Configuring the Oracle ASM library driver.
This will configure the on‐boot properties of the Oracle ASM library
driver. The following questions will determine whether the driver is
loaded on boot and what permissions it will have. The current values
will be shown in brackets ('[]'). Hitting
answer will keep that current value. Ctrl‐C will abort.
Default user to own the driver interface [grid]:
Default group to own the driver interface [asmadmin]: asmdba
Start Oracle ASM library driver on boot (y/n) [y]:
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [ OK ]
Scanning the system for Oracle ASMLib disks: [ OK ]
[root@rac01 init.d]#
同樣在其他節點也執行上面命令。
16. 使用 ASMLib 去標示 Shared Disks 作為 Candidate Disks,在一個
節點執行即可。
A. 使用 ASMLib 建立 ASM Disks , 語法如下:
# /usr/sbin/oracleasm createdisk disk_name device_partition_name
其中 disk_name 是你為 ASM Disk 選擇的一個名字,名字只能包含數字字母及下劃線,比如
OCR_VOTE01 , ASMDATA01 等. device_partition_name 標示為 ASM 的系磁碟分割槽,如
/dev/sdb1 , /dev/sdc1 等
如果你發現設定錯誤或需要 unmark這個磁碟,可以執行如下命令:
# /usr/sbin/oracleasm deletedisk disk_name
下面開始設定共享磁碟。
# /usr/sbin/oracleasm createdisk OCR_VOTE01 /dev/sdb1
# /usr/sbin/oracleasm createdisk ASMDATA01 /dev/sdc1
# /usr/sbin/oracleasm createdisk ASMDATA02 /dev/sdd1
執行結果如下,
[root@rac01 init.d]# /usr/sbin/oracleasm createdisk OCR_VOTE01 /dev/sdb1
Writing disk header: done
Instantiating disk: done
[root@rac01 init.d]# /usr/sbin/oracleasm createdisk ASMDATA01 /dev/sdc1
Writing disk header: done
Instantiating disk: done
[root@rac01 init.d]# /usr/sbin/oracleasm createdisk ASMDATA02 /dev/sdd1
Writing disk header: done
Instantiating disk: done
B. 在節點 1上為 RAC建立了所有的 ASM disks 後,使用 listdisks 命令確認他們的可用性。
[root@rac01 init.d]# /usr/sbin/oracleasm listdisks
ASMDATA01
ASMDATA02
OCR_VOTE01
然後在所有其他節點上以 root 使用者身份,使用 scandisks 命令掃描已經建立的 ASM 磁碟,也
就是說,我們只需要在節點 1 上建立 ASM 磁碟,其他節點不需要。
[root@rac02 proc]# /usr/sbin/oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...
Instantiating disk "OCR_VOTE01"
Instantiating disk "ASMDATA01"
Instantiating disk "ASMDATA02"
最後在其他節點透過 listdisks 檢查 ASM 磁碟的可用性。
[root@rac02 proc]# /usr/sbin/oracleasm listdisks
ASMDATA01
ASMDATA02
OCR_VOTE01
17. 準備安裝 Oracle Grid Infrastructure
切換到 grid 使用者,準備安裝 grid Infrastructure . 首先需要修改所有節點 grid 使用者的環境變
量.bash_profile .
[root@rac01 init.d]# su ‐ grid
[grid@rac01 ~]$ cd /home/grid/
[grid@rac01 ~]$ vi .bash_profile
以下 grid 的 bash_profile, 僅供參考,還有一些引數可以自行加入。
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# .bash_profile
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# OS User: grid
# Application: Oracle Grid Infrastructure
# Version: Oracle 11g release 2
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# Get the aliases and functions
if [ ‐f ~/.bashrc ]; then
. ~/.bashrc
fi
alias ls="ls ‐FA"
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# ORACLE_SID
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# Specifies the Oracle system identifier (SID)
# for the Automatic Storage Management (ASM)instance
# running on this node.
# Each RAC node must have a unique ORACLE_SID.
# (i.e. +ASM1, +ASM2,...)
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
ORACLE_SID=+ASM1; export ORACLE_SID
JAVA_HOME=/usr/local/java; export JAVA_HOME
ORACLE_BASE=/u01/grid/crs; export ORACLE_BASE
ORACLE_HOME=/u01/grid/11.2.0 ; export ORACLE_HOME
# 這裡注意: 測試發現安裝RAC的時候, grid使用者的ORACLE_BASE不能包含ORACLE_HOME,
# 比如 /u01/grid , /u01/grid/11.2 就不行。
ORACLE_TERM=vt100 ; export ORACLE_TERM
NLS_DATE_FORMAT="DD‐MON‐YYYY HH24:MI:SS"; export NLS_DATE_FORMAT
ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11
PATH=${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin
PATH=${PATH}:/usr/bin:/bin:/sbin:/usr/bin/X11:/usr/local/bin
PATH=${PATH}:/u01/product/common/oracle/bin
export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export CLASSPATH
export TEMP=/tmp
export TMPDIR=/tmp
umask 022
同樣在其他節點的 grid 使用者.bash_profile 中加入,並注意修改 ORACLE_SID=+ASM1 .
同樣,安裝 Oracle 軟體的 Oracle 使用者也需要設定.bash_profile .
[root@rac01 init.d]# su ‐ oracle
[grid@rac01 ~]$ cd /home/oracle/
[grid@rac01 ~]$ vi .bash_profile
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# .bash_profile
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# OS User: oracle
# Application: Oracle Database Software Owner
# Version: Oracle 11g release 2
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# Get the aliases and functions
if [ ‐f ~/.bashrc ]; then
. ~/.bashrc
fi
alias ls="ls ‐FA"
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# ORACLE_SID
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# Specifies the Oracle system identifier (SID) for
# the Oracle instance running on this node.
# Each RAC node must have a unique ORACLE_SID.
# (i.e. racdb1, racdb2,...)
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
ORACLE_SID=racdb1; export ORACLE_SID
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# ORACLE_UNQNAME
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
# In previous releases of Oracle Database, you were
# required to set environment variables for
# ORACLE_HOME and ORACLE_SID to start, stop, and
# check the status of Enterprise Manager. With
# Oracle Database 11g release 2 (11.2) and later, you
# need to set the environment variables ORACLE_HOME
# and ORACLE_UNQNAME to use Enterprise Manager.
# Set ORACLE_UNQNAME equal to the database unique
# name.
# ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
ORACLE_UNQNAME=racdb; export ORACLE_UNQNAME
JAVA_HOME=/usr/local/java; export JAVA_HOME
ORACLE_BASE=/u01/product/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/11.2.0/db_1; export ORACLE_HOME
ORACLE_TERM=vt100; export ORACLE_TERM
NLS_DATE_FORMAT="DD‐MON‐YYYY HH24:MI:SS"; export NLS_DATE_FORMAT
ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11
PATH=${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin
PATH=${PATH}:/usr/bin:/bin:/sbin:/usr/bin/X11:/usr/local/bin
PATH=${PATH}:/u01/product/common/oracle/bin
export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export CLASSPATH
export TEMP=/tmp
export TMPDIR=/tmp
umask 022
其他節點也設定,並注意修改 ORACLE_SID 部分。
安裝用於 Linux 的 cvuqdisk 程式包
在兩個 Oracle RAC 節點上安裝作業系統程式包 cvuqdisk。如果沒有 cvuqdisk,叢集驗證實
用程式就無法發現共享磁碟,當執行(手動執行或在 Oracle Grid Infrastructure 安裝結束時
自動執行) 叢集驗證實用程式時, 您會收到這樣的錯誤訊息: “Package cvuqdisk not installed” 。
注意使用適用於你的硬體體系結構(例如,x86_64 或 i386)的 cvuqdisk RPM。
cvuqdisk RPM 包含在 Oracle Grid Infrastructure 安裝介質上的 rpm 目錄中。這裡是在
/u01/packages/grid/rpm 目錄中。
[grid@rac01 rpm]$ ls /u01/packages/grid/rpm
cvuqdisk‐1.0.7‐1.rpm
要安裝 cvuqdisk RPM,執行以下步驟:
以 grid 使用者帳戶將 cvuqdisk 程式包從節點 1 複製到節點 2 :
以 root 使用者身份分別登入到兩節點:
設定環境變數 CVUQDISK_GRP, 使其指向作為 cvuqdisk 的所有者所在的組 (本文為 oinstall) :
[root@rac01 ~]# CVUQDISK_GRP=oinstall; export CVUQDISK_GRP
[root@rac01 rpm]# rpm ‐ivh cvuqdisk‐1.0.7‐1.rpm
[root@rac02~]# CVUQDISK_GRP=oinstall; export CVUQDISK_GRP
[root@rac02 rpm]# rpm ‐ivh cvuqdisk‐1.0.7‐1.rpm
使用 CVU 驗證是否滿足 Oracle 叢集件要求(可選),下面文字只是說明。
在執行 Oracle 安裝程式之前不一定要執行叢集驗證實用程式。從 Oracle Clusterware 11g 第
2 版開始, Oracle Universal Installer (OUI) 會檢測到不滿足最低安裝要求的情況, 並建立 shell
指令碼(稱為修復指令碼)以完成尚未完成的系統配置步驟。如果 OUI 發現未完成的任務,它
會生成修復指令碼 (runfixup.sh)。 在 Oracle Grid Infrastructure 安裝過程中, 單擊 Fix and Check
Again Button 之後,可以執行修復指令碼。
您也可以讓 CVU 在安裝之前生成修復指令碼。
如果您決定親自執行 CVU,請記住要作為 grid 使用者在將要執行 Oracle 安裝的節點 (rac01)
上執行。此外,必須為 grid 使用者配置透過使用者等效性實現的 SSH 連通性。如果您打算使
用 OUI 配置 SSH 連線,則 CVU 實用程式會失敗,它沒有機會執行其任何的關鍵檢查並生
成修復指令碼:
這裡我們以傳統方式先建立各節點間的 SSH連通性(grid使用者)。
在節點 1 上:
[root@rac01 ~]# su ‐ grid
[grid@rac01 ~]$
[grid@rac01 ~]$ cd /home/grid/
[grid@rac01 ~]$ mkdir .ssh
[grid@rac01 ~]$ chmod 700 .ssh
同樣在節點 2 上執行:
[root@rac02 ~]# su ‐ grid
[grid@rac02 ~]$ cd /home/grid/
[grid@rac02 ~]$ mkdir .ssh
[grid@rac02 ~]$ chmod 700 .ssh
在節點 1 上:
[grid@rac01 ~]$ ssh‐keygen ‐t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/grid/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/grid/.ssh/id_rsa.
Your public key has been saved in /home/grid/.ssh/id_rsa.pub.
The key fingerprint is:
a7:fc:73:39:b5:b1:48:24:91:13:62:a7:9a:78:6a:57
[grid@rac01 ~]$ ssh‐keygen ‐t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/grid/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/grid/.ssh/id_dsa.
Your public key has been saved in /home/grid/.ssh/id_dsa.pub.
The key fingerprint is:
6a:13:eb:f2:e9:a0:36:b1:bf:20:f2:38:4e:4b:0b:2d
[grid@rac01 ~]$
同樣在節點 2 上執行:
[grid@rac02 ~]$ ssh‐keygen ‐t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/grid/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/grid/.ssh/id_rsa.
Your public key has been saved in /home/grid/.ssh/id_rsa.pub.
The key fingerprint is:
93:4d:0e:22:33:72:59:03:23:78:04:72:2f:00:b1:ec
[grid@rac02 ~]$ ssh‐keygen ‐t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/grid/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/grid/.ssh/id_dsa.
Your public key has been saved in /home/grid/.ssh/id_dsa.pub.
The key fingerprint is:
fe:66:09:95:1d:40:84:ba:d6:7b:39:e5:14:cf:de:8a
在節點 1 上執行:
[grid@rac01 .ssh]$ cd /home/grid/.ssh/
[grid@rac01 .ssh]$ ssh rac01 cat /home/grid/.ssh/id_rsa.pub >>authorized_keys
The authenticity of host 'rac01 (192.168.5.111)' can't be established.
RSA key fingerprint is cf:cb:11:68:ed:84:d9:09:17:80:30:3f:ac:ca:1c:b6.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac01,192.168.5.111' (RSA) to the list of known hosts.
password:
Permission denied, please try again.
password:
[grid@rac01 .ssh]$ ssh rac01 cat /home/grid/.ssh/id_dsa.pub >>authorized_keys
[grid@rac01 .ssh]$ ssh rac02 cat /home/grid/.ssh/id_rsa.pub >>authorized_keys
The authenticity of host 'rac02 (192.168.5.112)' can't be established.
RSA key fingerprint is cf:cb:11:68:ed:84:d9:09:17:80:30:3f:ac:ca:1c:b6.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac02,192.168.5.112' (RSA) to the list of known hosts.
password:
[grid@rac01 .ssh]$ ssh rac02 cat /home/grid/.ssh/id_dsa.pub >>authorized_keys
password:
[grid@rac01 .ssh]$
在節點 1 上將生成的 authorized_keys 複製到節點 2 上。
[grid@rac01 .ssh]$ cd /home/grid/.ssh/
[grid@rac01 .ssh]$ scp authorized_keys rac02:/home/grid/.ssh
password:
authorized_keys 100% 1984 1.9KB/s 00:00
[grid@rac01 .ssh]$
在節點 1 及節點 2 上 chmod authorized_keys 。
[grid@rac01 .ssh]$ cd /home/grid/.ssh/
[grid@rac01 .ssh]$ chmod 600 authorized_keys
[grid@rac02 .ssh]$ cd /home/grid/.ssh/
[grid@rac02 .ssh]$ chmod 600 authorized_keys
測試節點 1,2 的 SSH 連通性。
在節點 1 上:
[grid@rac01 .ssh]$ ssh rac01 date
Tue Dec 28 13:54:54 CST 2010
[grid@rac01 .ssh]$ ssh rac02 date
Tue Dec 28 13:54:52 CST 2010
[grid@rac01 .ssh]$ ssh racpri01 date
The authenticity of host 'racpri01 (17.1.1.1)' can't be established.
RSA key fingerprint is cf:cb:11:68:ed:84:d9:09:17:80:30:3f:ac:ca:1c:b6.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'racpri01,17.1.1.1' (RSA) to the list of known hosts.
Tue Dec 28 13:55:31 CST 2010
[grid@rac01 .ssh]$ ssh racpri02 date
The authenticity of host 'racpri02 (17.1.1.2)' can't be established.
RSA key fingerprint is cf:cb:11:68:ed:84:d9:09:17:80:30:3f:ac:ca:1c:b6.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'racpri02,17.1.1.2' (RSA) to the list of known hosts.
Tue Dec 28 13:55:29 CST 2010
在節點 2 上:
[grid@rac02 .ssh]$ ssh rac01 date
The authenticity of host 'rac01 (192.168.5.111)' can't be established.
RSA key fingerprint is cf:cb:11:68:ed:84:d9:09:17:80:30:3f:ac:ca:1c:b6.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac01,192.168.5.111' (RSA) to the list of known hosts.
Tue Dec 28 13:56:24 CST 2010
[grid@rac02 .ssh]$ ssh rac02 date
The authenticity of host 'rac02 (192.168.5.112)' can't be established.
RSA key fingerprint is cf:cb:11:68:ed:84:d9:09:17:80:30:3f:ac:ca:1c:b6.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac02,192.168.5.112' (RSA) to the list of known hosts.
Tue Dec 28 13:57:36 CST 2010
[grid@rac02 .ssh]$ ssh racpri01 date
The authenticity of host 'racpri01 (17.1.1.1)' can't be established.
RSA key fingerprint is cf:cb:11:68:ed:84:d9:09:17:80:30:3f:ac:ca:1c:b6.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'racpri01,17.1.1.1' (RSA) to the list of known hosts.
Tue Dec 28 13:57:50 CST 2010
[grid@rac02 .ssh]$ ssh racpri02 date
The authenticity of host 'racpri02 (17.1.1.2)' can't be established.
RSA key fingerprint is cf:cb:11:68:ed:84:d9:09:17:80:30:3f:ac:ca:1c:b6.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'racpri02,17.1.1.2' (RSA) to the list of known hosts.
Tue Dec 28 13:57:44 CST 2010
手動執行 CVU 使用程式驗證 Oracle 叢集件要求(所有節點都執行):
到 grid 軟體解壓的目錄下執行 runcluvfy.sh 命令:
[grid@racnode1 ~]$ cd /u01/packages
[grid@racnode1 grid]$ ./runcluvfy.sh stage -pre crsinst -n rac01,rac02 -fixup -verbose
檢視 CVU 報告。 在本文所述配置情況下,應該只發現如下的唯一一個錯誤:
[grid@rac01 grid]$ ./runcluvfy.sh stage -pre crsinst -n rac01,rac02 -fixup -verbose
......
Check: Membership of user "grid" in group "dba"
Node Name User Exists Group Exists User in Group Comment
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐
‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
rac02 yes yes no failed
rac01 yes yes no failed
.......
上面一個檢查失敗的原因是,透過任務角色劃分 配置建立了以角色分配的組和使用者,而 CVU 不能正確識
別這種配置。如何建立任務角色劃分配置。CVU 不能識別此類配置,因而假定 grid 使用者始終是 dba 組的
成員。可以放心地忽略這個失敗的檢查。CVU 執行的所有其他檢查的結果報告應該為“passed” ,之後才能
繼續進行 Oracle Grid Infrastructure 的安裝。
同透過執行結果我們可以看到基本都是 passed, 如果 NTP 時間同步部分有 fail, 我們可以到
/etc/ntp.conf 下面將此檔案改名,比如 ntp.conf.bak (安裝完成之後再改回來) . 只要時間同步
就 OK . 同樣在節點 2 上執行上面的命令來檢驗。
然後在節點 1 及節點 2 上使用 CVU 驗證硬體和作業系統設定。
同樣,在 rac01 節點上以具有使用者等效性配置的 grid 使用者帳戶執行以下命令:
[grid@rac01 ~]$ cd /u01/packages/grid/
[grid@rac01 grid]$ ./runcluvfy.sh stage -post hwos -n rac01,rac02 -verbose
檢視 CVU 報告。CVU 執行的所有其他檢查的結果報告應該為“passed” ,之後才能繼續進
行 Oracle Grid Infrastructure 的安裝。
同樣在節點 2 上執行此驗證指令碼檢視結果,同樣,結果都為 passed 才能繼續安裝。
18. 開始安裝 Grid Infrastructure
需要圖形介面安裝 Grid Infrastructure 軟體,這裡使用 VNC。以 grid 使用者登陸,進入到 grid
infrastructure 解壓後的目錄,執行$./runInstaller
A. 選擇Install and Configure Grid Infrastructure for a Cluster . 下一步。
注意: 11g要使用ASM,即使單機也需要安裝Grid Infrastructure.
B. 選擇高階安裝 - Advanced Installation .
C. 選擇需要的語言,這裡我們全選了。
D. 填寫Cluster Name為rac, SCAN Name為racscan(與/etc/hosts中設定匹配),port=1521.
不配置GNS.
E. 配置節點資訊: rac01, racvip01 ; rac02, racvip02 .
F. 設定網路卡(按照/etc/hosts中IP對應設定,多餘的都設定為Do Not Use).
G. Storage項選擇ASM .
H. 建立ASM磁碟組:注意high表示5個映象,Normal表示3個映象,我們選擇External,因為
我們測試只有一個磁碟組,沒有設定failure group, 生產庫一般最好選擇Normal.
Disk Group Name : OCR_VOTE (自己起名字),選擇External, Add Disks部分,選擇
Candidate Disks及對應的ORCL:OCR_VOTE01 .
I. 設定ASM例項的sys及sysasm使用者的密碼。
J. 選擇不使用IPMI .
K. 作業系統組: asmdba, asmoper, asmadmin .
L. grid使用者的ORACLE_BASE及ORACLE_HOME, 按照grid使用者的.bash_profile設定來。
/u01/grid/crs, /u01/grid/11.2.0
M. Oracle Inventory : /u01/product/oraInventory .
O. 複製及安裝檔案,兩個節點按順序執行orainstRoot.sh及root.sh 指令碼。
注意:執行root.sh比較長時間,所以最好vnc登入本機執行,以免斷開。
如果中間出現異常需要解除安裝grid,可以使用下面命令徹底清理 :
[grid@rac01 ~]$ cd /u01/grid/
[grid@rac01 grid]$ cd deinstall/
[grid@rac01 deinstall]$ ./deinstall
P. 執行完成後OK, 我們可能看到安裝到最後可能會報錯INS-20802錯誤,可以skip。
我們在節點 1,2 上透過 crs_stat –t 檢視服務開啟狀態(oc4j 和 gsd offline 是正常的):
[root@rac02 oracle]# su ‐ grid
[grid@rac02 ~]$
[grid@rac02 ~]$ crs_stat ‐t
Name Type Target State Host
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐
ora....ER.lsnr ora....er.type ONLINE ONLINE rac01
ora....N1.lsnr ora....er.type ONLINE ONLINE rac01
ora....VOTE.dg ora....up.type ONLINE ONLINE rac01
ora.asm ora.asm.type ONLINE ONLINE rac01
ora.eons ora.eons.type ONLINE ONLINE rac01
ora.gsd ora.gsd.type OFFLINE OFFLINE
ora....network ora....rk.type ONLINE ONLINE rac01
ora.oc4j ora.oc4j.type OFFLINE OFFLINE
ora.ons ora.ons.type ONLINE ONLINE rac01
ora....SM1.asm application ONLINE ONLINE rac01
ora....01.lsnr application ONLINE ONLINE rac01
ora.rac01.gsd application OFFLINE OFFLINE
ora.rac01.ons application ONLINE ONLINE rac01
ora.rac01.vip ora....t1.type ONLINE ONLINE rac01
ora....SM2.asm application ONLINE ONLINE rac02
ora....02.lsnr application ONLINE ONLINE rac02
ora.rac02.gsd application OFFLINE OFFLINE
ora.rac02.ons application ONLINE ONLINE rac02
ora.rac02.vip ora....t1.type ONLINE ONLINE rac02
ora....ry.acfs ora....fs.type ONLINE ONLINE rac01
ora.scan1.vip ora....ip.type ONLINE ONLINE rac01
備註:
在 11gr2 中,預設 oc4j和 gsd 資源是 disable 的;
oc4j 是用於WLM 的一個資源 , WLM在 11.2.0.2 才可用;
gsd 是 CRS 用於跟 9i RAC 進行通訊的一個模組,是為了向後相容
才保留的,不影響效能;建議不要刪除,也不要嘗試開啟他們, 忽略即可。
19. 開始安裝 Oracle RDBMS 軟體
以 Oracle 使用者建立一個 vnc session,以便登入後不用切換使用者(透過 root 或其他使用者切換到
oracle 可能會碰到安裝圖形介面顯示的問題)。
[root@rac02 u01]# su - oracle
[oracle@rac02 ~]$
[oracle@rac01 database]$ pwd
/u01/packages/database
[oracle@rac01 database]$
[oracle@rac01 database]$ ./runInstaller
圖形介面出現後。
A. 輸入Email . 不用選擇下面security部分,也不用設定proxry server.
B. 只是Install database software only.
C. 選擇Real Application Clusters database installation, 可以看到兩個節點node name.
點選下面的 SSH Connectivity按鈕,設定oracle使用者密碼,點選Setup, 成功後點選Test.
D. 選擇語言。
E. 安裝企業版。
F. 按照Oracle使用者的.bash_profile設定ORACLE_BASE及ORACLE_HOME.
G. 選擇作業系統組: dba, oinstall .
H. 開始安裝。
I. 按照提示在各個節點按照順序執行root.sh .
J. 提示安裝成功。
20. 執行ASMCA建立磁碟組。
以grid使用者登入開始ASMCA配置磁碟組,因為是圖形介面,我們使用grid使用者的
vnc session .
[grid@rac01 bin]$ pwd
/u01/grid/11.2.0/bin
[grid@rac01 bin]$ ./asmca
圖形介面顯示到Disk Groups 。我們可以看到先前配置的OCR_VOTE已經在列。點選
下面的create 建立datafile及flash recovery area的ASM磁碟組。
磁碟組名稱ORADATA, 冗餘部分選擇External, 點選磁碟為ORCL:ASMDATA01,點選OK.
繼續create
磁碟組名稱ORAFLASH, 冗餘部分選擇External, 磁碟為ORCL:ASMDATA02,點選OK.
全部OK後點選QUIT退出。
21. 執行 DBCA 建立資料庫。
以 oracle 使用者登陸系統 dbca 建立資料庫,這裡我們以 oracle 使用者建立的 VNC session 登入
VNC .
[oracle@rac01 bin]$ dbca
A. 建立RAC庫。
B. Create a Database.
C. 選擇Custom Database .
D. 配置型別為Admin-Managed, 全域性資料庫名及SID Prefix都是racdb(Oracle使用者的.bash_profile
中有設定), 節點部分Select All.
E. 企業管理器部分預設。
F. 測試用,所以所有使用者設定一個密碼。
G. 設定儲存型別: ASM, 選擇"Use Common Location for All Database Files"
Database Files Location: +ORADATA, 彈出設定ASMSNMP密碼框。
H. 選擇Specify Flash Recovery Area , 路徑部分為+ORAFLASH, 大小為4977M,
設定自動歸檔,點選設定歸檔路徑為 +ORADATA/RACDB/arch
建議: 如果只是設定+ORADATA, 這裡歸檔檔案會使用 OMF的格式,不遵循初始引數中
的 format, 建議安裝完成後手工自己建立一個 ASM 目錄來放置歸檔檔案,這樣檔案
名稱就會遵守 format 規則了。警告資訊忽略。
I. 資料庫元件預設即可。
J. Mem 使用AMM, Sizing使用16K, 字符集採用AL32UTF8. 連線模式採用Dedicated Server.
K. 設定控制檔案及表空間,redo log group.
L. 安裝完畢。
22. 執行 DBCA 建立資料庫。
[grid@rac01 ~]$ crs_stat ‐t
Name Type Target State Host
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
‐‐‐‐‐‐
ora....ER.lsnr ora....er.type ONLINE ONLINE rac01
ora....N1.lsnr ora....er.type ONLINE ONLINE rac01
ora....VOTE.dg ora....up.type ONLINE ONLINE rac01
ora.ORADATA.dg ora....up.type ONLINE ONLINE rac01
ora....LASH.dg ora....up.type ONLINE ONLINE rac01
ora.asm ora.asm.type ONLINE ONLINE rac01
ora.eons ora.eons.type ONLINE ONLINE rac01
ora.gsd ora.gsd.type OFFLINE OFFLINE
ora....network ora....rk.type ONLINE ONLINE rac01
ora.oc4j ora.oc4j.type OFFLINE OFFLINE
ora.ons ora.ons.type ONLINE ONLINE rac01
ora....SM1.asm application ONLINE ONLINE rac01
ora....01.lsnr application ONLINE ONLINE rac01
ora.rac01.gsd application OFFLINE OFFLINE
ora.rac01.ons application ONLINE ONLINE rac01
ora.rac01.vip ora....t1.type ONLINE ONLINE rac01
ora....SM2.asm application ONLINE ONLINE rac02
ora....02.lsnr application ONLINE ONLINE rac02
ora.rac02.gsd application OFFLINE OFFLINE
ora.rac02.ons application ONLINE ONLINE rac02
ora.rac02.vip ora....t1.type ONLINE ONLINE rac02
ora.racdb.db ora....se.type ONLINE ONLINE rac01
ora....ry.acfs ora....fs.type ONLINE ONLINE rac01
ora.scan1.vip ora....ip.type ONLINE ONLINE rac01
問題點及解決:
後來測試發現,歸檔路徑不能正常歸檔,可能是在設定規定那個路徑的時候有些問題。
這裡重新透過 ASMCMD命令重新建立歸檔路徑及重新設定初始化引數中的歸檔路徑。
[root@rac01 ~]# su ‐ grid
[grid@rac01 ~]$ id
uid=501(grid) gid=501(oinstall) groups=501(oinstall),504(asmadmin),506(asmdba),507(asmoper)
[grid@rac01 ~]$ asmcmd
ASMCMD> help
ASMCMD> ls
OCR_VOTE/
ORADATA/
ORAFLASH/
ASMCMD> cd oradata (不區分大小寫的)
ASMCMD> ls
RACDB/
ASMCMD> cd racdb
ASMCMD> ls
CONTROLFILE/
DATAFILE/
ONLINELOG/
PARAMETERFILE/
TEMPFILE/
control01.ctl
control02.ctl
redo01.log
redo02.log
redo03.log
redo04.log
spfileracdb.ora
準備在 ASM 磁碟下建立 arch 目錄,用於存放歸檔。
ASMCMD> pwd (檢視一下目錄)
+oradata/racdb
ASMCMD> mkdir arch
ASMCMD>ls
[root@rac01 ~]# su ‐ oracle
[oracle@rac01 ~]$ sqlplus "/as sysdba"
SQL> alter system set log_archive_dest_1='LOCATION=+ORADATA/RACDB/arch';
歸檔測試,透過 ASMCMD 檢視 ASM磁碟下的歸檔情況,測試 OK.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-683412/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Red Hat Enterprise Linux Server 7.4 安裝LinuxServer
- Linux red hat 核心版下安裝NginxLinuxNginx
- Red Hat Linux安裝CentOS的yum源LinuxCentOS
- 在Red Hat和Centos上安裝MongoDBCentOSMongoDB
- Linux 安裝 KVM 虛擬機器Linux虛擬機
- linux 虛擬機器下 安裝redisLinux虛擬機Redis
- NOI Linux 虛擬機器安裝教程Linux虛擬機
- 在VMware上安裝CentOS版本的Linux虛擬機器CentOSLinux虛擬機
- Linux虛擬機器安裝配置到專案上架Linux虛擬機
- linux虛擬機器執行機必安裝Linux虛擬機
- Linux 虛擬機器詳細安裝MySQLLinux虛擬機MySql
- VMwareWorkstation虛擬機器安裝Linux系統虛擬機Linux
- 安裝虛擬機器虛擬機
- Hadoop叢集--linux虛擬機器Hadoop安裝與配置、克隆虛擬機器HadoopLinux虛擬機
- Mac 使用 PD 虛擬機器安裝 Kali LinuxMac虛擬機Linux
- 虛擬機器一定要安裝Linux嗎?虛擬機Linux
- LEDE 虛擬機器安裝虛擬機
- ubuntu虛擬機器安裝Ubuntu虛擬機
- 虛擬機器怎麼安裝win10 虛擬機器上安裝Win10系統的教程虛擬機Win10
- Windows虛擬機器安裝Linux的基礎配置Windows虛擬機Linux
- VM VirtualBox 虛擬機器 Linux 安裝增強功能虛擬機Linux
- vSphere Client上安裝虛擬機器工具VMware Toolsclient虛擬機
- G005-OS-INS-02 Red Hat Enterprise Linux V8.2 安裝Linux
- win10如何在虛擬機器上安裝ubuntu_win10虛擬機器安裝ubuntu詳細教程Win10虛擬機Ubuntu
- MacOS安裝虛擬機器教程Mac虛擬機
- 使用虛擬機器安裝Kail虛擬機AI
- Mac 安裝Windows虛擬機器MacWindows虛擬機
- CentOS 7 安裝虛擬機器CentOS虛擬機
- kvm 安裝 windows 虛擬機器Windows虛擬機
- 虛擬機器Tomcat的安裝虛擬機Tomcat
- 使用libvirt 在伺服器上安裝openSuse虛擬機器伺服器虛擬機
- linux實用技巧:在虛擬機器vmware16軟體上安裝CentOs8.2虛擬機器,重置可用源和安裝輸入法Linux虛擬機CentOS
- 在虛擬機器中安裝ftp虛擬機FTP
- Centos7虛擬機器安裝CentOS虛擬機
- Homestead 虛擬機器安裝步驟虛擬機
- CentOS 7虛擬機器安裝教程CentOS虛擬機
- 虛擬機器安裝 gho系統虛擬機
- 單個虛擬機器安裝spark虛擬機Spark
- 在 fnOS上安裝 KVM 虛擬化,並使用 Cockpit 網頁管理虛擬機器KPI網頁虛擬機