10g—-clusterware
11g—-包含在grid軟件中
集群支持的文件系統:
集權文件系統
ocfs
asm
rac–集中管理內存,cpu
數據庫服務器沒有辦法滿足需求:—-通過rac進行集中管理
內存不夠
cpu不夠
硬盤不夠
內網/私網—集群中節點與節點之間的網絡連接,網絡傳輸數率要求很高
需要網絡交換機
全局SGA,管理每個SGA的信息,全局SGA由集群管理放在共享存儲里
應用程序—外網(需要網卡)—連接數據庫–一般給DBA用,有幾個節點就需要幾個IP地址
應用程序/用戶使用(需要網卡)—虛擬網絡/vip—-如果有一個用戶用外網聯機到數據庫,有一個節點失效了,我們就應用我們的集群軟件虛擬出來的網絡,進行我們實例的切換
需要配置tnsnames.ora,將節點信息寫入到文件中
11g中 scan–簡單客戶端網絡:簡化用戶在tnsnames的配置,scan中一共有3個地址,不是真實的網絡。配置的時候主機名默認為racscan。使用racscan需要配置DNS服務器。
所有實例都訪問一個數據庫–多個實例向一個數據庫寫數據–數據庫放到共享存儲/共享文件系統中(orfs/acfs)
實例訪問存儲的網—需要存儲網絡,通過交換機,不能直連,做成主備保證時時都可訪問,數據文件,控制文件,日志文件,歸檔日志,備份可以放到共享存儲中,其他信息不支持存放
至少需要三張網卡:
應用程序
|
實例 ——-實例
| |
共享存儲 數據庫
記錄節點除了問題,或者有新的節點加入到集群中,放到共享存儲中
vtd:磁盤仲裁—-節點失效了,失效節點的信息分配給其他節點
ocr:集群注冊機— 節點與節點間的信息寫入到ocr ,如果節點失效,我們需要在ocr中剔除節點信息,等到節點恢復我們又加入ocr中
集群的搭建:
1.三張網卡
配置/etc/hosts,將所有網絡寫入進去,外網,私網,
外網 92.10.10.11 rac.com.cn rac
私網 rac-vip.com.cn
rac-priv.com.cn
scan racscn.com.cn
2.配置DNS服務器
3.配置時間同步
只在一個節點安裝rac,其他節點加入就可以
4.ssh等效性
5.搭建共享存儲,openfire
6.安裝我們的軟件,可以不用檢查硬件和軟件
安裝集群軟件
7.安裝數據庫軟件
8.安裝集群數據庫
openfiler初始化:
/etc/init.d/iptables stop
chkconfig iptables off
vim /etc/init.d/iscsi-target //注釋掉所有含有iptables的句子
重啟系統
openfiler 配置:
https://62.10.10.10:446/ 用戶名:openfiler 密碼:password
在system 下添加進去兩個節點
2.?• Volumes —>?Volume Groups—>建好我們的vg組,名字叫racvg,將我們添加的5塊磁盤都添加進vg組里面 —->Add Volume(增加我們的卷組,分為四個組 ocr,vtd,fra,db )
—>iSCSI Targets (增加一個iSCSI Targets組,然后和我們的磁盤進行映射)
3.Services (把iSCSI Target服務起起來)
4.在Volumes做好如下分組
一.安裝系統及openfiler網絡存儲系統
二. RACA install package
yum install oracle-rdbms*
yum install bind*
yum install xinte
:td*
yum install iscsi-initiator*
RACB:
yum install oracle-rdbms*
yum install iscsi-initiator*
三. RACA,RACB上編寫/etc/hosts
92.10.10.20 raca.com.cn raca
92.10.10.21 racb.com.cn racb
92.10.10.100 raca-vip.com.cn raca-vip
92.10.10.101 racb-vip.com.cn racb-vip
12.10.10.20 raca-priv.com.cn raca-priv
12.10.10.21 racb-priv.com.cn racb-priv
92.10.10.200 racscan.com.cn racscan
92.10.10.201 racscan.com.cn racscan
92.10.10.202 racscan.com.cn racscan
四.在raca節點上配置dns服務器
cd /var/named/chroot/etc/
cp /etc/named* ./ -r
vi named.conf
listen-on port 53 { any; };
allow-query { any; };
vi named.rfc1912.zones
zone "com.cn" IN {
type master;
file "com.zone";
allow-update { none; };
};
zone "10.10.92.in-addr.arpa" IN {
type master;
file "92.zone";
allow-update { none; };
};
zone "10.10.12.in-addr.arpa" IN {
type master;
file "12.zone";
allow-update { none; };
cd /var/named/chroot/var/named
cp /usr/share/doc/bind-9.8.2/sample/var/named/* ./
cp named.localhost com.zone
cp named.loopback 92.zone
cp named.loopback 12.zone
vi com.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
raca A 92.10.10.20
racb A 92.10.10.21
raca-vip A 92.10.10.100
racb-vip A 92.10.10.101
raca-priv A 12.10.10.20
racb-priv A 12.10.10.21
racscan A 92.10.10.200
racscan A 92.10.10.201
racscan A 92.10.10.202
vi 92.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
PTR localhost.
20 PTR raca.com.cn.
21 PTR racb.com.cn.
100 PTR raca-vip.com.cn.
101 PTR racb-vip.com.cn.
200 PTR racscan.com.cn.
201 PTR racscan.com.cn.
202 PTR racscan.com.cn.
vi 12.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
PTR localhost.
20 PTR raca-priv.com.cn.
21 PTR racb-priv.com.cn.
chown -R named.named /var/named/chroot/etc
chown -R named.named /var/named/chroot/var/named
執行完成啟動dns服務。并在raca,racb上添加dns服務器的ip地址及域名
驗證正反向解析是否成功
五.在raca配置時間同步服務 xinted
cd /etc/xinted.d/
vi time-dgram time-stream
將上面兩個文件中的disable=yes改成 disable=no
/etc/init.d/xinted start
在raca執行: rdate -s raca
在racb執行: rdate -s raca
六.在raca識別存儲中的磁盤。固定磁盤為ASM絞盤,編輯規則文件
iscsiadm -m discovery -t st -p 62.10.10.50 —識別LUN
iscsiadm -m node -L all--將LUN中的磁盤加載到節點
fdisk -l —查看加載的磁盤并分區
scsi_id -u -g -d /dev/sdb1
cd /etc/udev/rules.d/
cp 99-fuse.rules 99-asm.rules
vi 99-asm.rules
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -u -g -d /dev/$parent",RESULT=="14f504e46494c45527063596b484b2d337466672d5843547a",NAME="asmocr", MODE="0640",OWNER="oracle",GROUP="dba"
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -u -g -d /dev/$parent",RESULT=="14f504e46494c455233664673566a2d554170342d6e595874",NAME="asmvtd", MODE="0640",OWNER="oracle",GROUP="dba"
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -u -g -d /dev/$parent",RESULT=="14f504e46494c4552455939746c492d43787a332d67695966",NAME="asmfra", MODE="0640",OWNER="oracle",GROUP="dba"
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -u -g -d /dev/$parent",RESULT=="14f504e46494c45526b70426846322d364b43432d727a4f4b",NAME="asmdb", MODE="0640",OWNER="oracle",GROUP="dba"
start_udev
ll /dev/asm* —-查看固定的磁盤
在racb節點固定磁盤,編輯規則文件
cd /etc/udev/rules.d/
cp 99-fuse.rules 99-asm.rules
vi 99-asm.rules
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -u -g -d /dev/$parent",RESULT=="14f504e46494c45527063596b484b2d337466672d5843547a",NAME="asmocr", MODE="0640",OWNER="oracle",GROUP="dba"
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -u -g -d /dev/$parent",RESULT=="14f504e46494c455233664673566a2d554170342d6e595874",NAME="asmvtd", MODE="0640",OWNER="oracle",GROUP="dba"
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -u -g -d /dev/$parent",RESULT=="14f504e46494c4552455939746c492d43787a332d67695966",NAME="asmfra", MODE="0640",OWNER="oracle",GROUP="dba"
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -u -g -d /dev/$parent",RESULT=="14f504e46494c45526b70426846322d364b43432d727a4f4b",NAME="asmdb", MODE="0640",OWNER="oracle",GROUP="dba"
start_udev
ll /dev/asm* —-查看固定的磁盤
七.在raca,racb配置ssh等效性
su – oracle
ssh-keygen
ssh-copy-id .ssh/id_rsa.pub raca
ssh-copy-id .ssh/id_rsa.pub racb
ssh raca;ssh racb
ssh raca.com.cn ssh racb.com.cn
ssh raca-priv ssh racb-priv
ssh raca-priv.com.cn ssh racb-priv.com.cn
八.準備安裝介質及在RACA,RACB創建軟件目錄
九.在RACA節點執行安裝操作
安裝grid
安裝database
. .grid 下asmca 給此
dbca建庫
next 發現提示監聽沒有起來,我們就可以在兩個節點raca和racb上重建我們的監聽,用netca ,先要運行。grid 環境變量
集群啟動
sqlplus
startup
shutdown immediate
srvctl start database -d updb
srcvtl stop database -d updb
grid—–
crs-start ora.updb.db
crs-stop ora.updb.db
rac啟動實例(數據庫)
每一個節點都要啟動
法一:
raca–racb //登錄到每一個節點進行啟動
sqlplus / as sysdba
startup
法二:
srvctl
srvctl start database -d updb -n raca //啟動raca節點—數據庫沒有啟動
srvctl start database -d updb -n racb //啟動racb節點
srvctl start database -d updb -n raca,racb //在所有節點上啟動數據庫updb
srvctl start instance -i updb2 -d updb //在哪個節點啟動實例–數據庫已經啟動
srvctl status instance -i updb2 -d updb //查看實例的運行狀態
srvctl stop instance -i updb2 -d updb //關閉實例啟動
srvctl status databse -d updb //查看我們的數據庫運行在哪兩個節點上
法三:
在..grid環境變量下
crs_start ors.updb.db
法四:
crsctl start resource all //啟動所有子資源
集群啟動順序:
1.存儲
2.集群服務 —-ohasd crs_stat -t //ohasd 啟動調用的是/etc/init/oracle-ohasd.conf 文件
3.啟動實例
集群關閉順序:
1.關閉實例
2.關閉集群服務
3.關閉存儲
/u01/oraInventory/ContentsXML/inventory.xml //可以查看到我們安裝集群的所有信息
增加節點
1.配置DNS //所有的節點都要進行節點IP地址的添加
2.配置時間同步
3.配置ssh等效性
4.增加節點IP,在存儲中
5.識別并綁定節點
6.創建安裝目錄
7.同步集群軟件
8.讓你的 節點可以訪問存儲
raca>>vim /u01/grid/11g/oui/bin/addNode.sh //可以看到如何增加節點的命令
$ ./addNode.sh -silent "CLUSTER_NEW_NODES={node3}";
raca>>/u01/grid/11g/oui/bin/addNode.sh -addNode CLUSTER_NEW_NODES={racc.com.cn} CLUSTER_NEW_VIRTUAL_HOSTNAMES={racc-vip.vom.vn} //在node1上增加節點,可以在任意存在的節點執行這個命令
增加節點,刪除節點
1.在存的在任一節點addnode —-cluster–
cd /u01/grid/11g/oui/bin
export IGNORE_PREADDNODE_CHECKS=Y
./addnode.sh -addnode CLUSTER_NEW_NODES={racc} CLUSTER_NEW_VIRTUAL_HOSTNAMES={racc-vip}
2.在新增加的節點(racc)上執行腳本
/oraInventoryroot.sh
/root.sh
3 在存在的任一節點上增加數據庫軟件
cd /u01/oracle/11g/oui/bin
export IGNORE_PREADDNODE_CHECKS=Y
./addnode.sh -addnode CLUSTER_NEW_NODES={racc} CLUSTER_NEW_VIRTUAL_HOSTNAMES={racc-vip}
4.在新增加的節點(racc)上執行腳本
/root.sh
5.在任一存在的節點增加實例
dbca
dbca -silent -addInstance -nodeList racc -gdbName updb
-instanceName updb3 -sysDBAUserName sys -sysDBAPassword oracle
delete racc node
1.delete instance //如果服務沒有停,就可以直接在任意節點執行,如果服務已經停了,就只能在要刪的節點上執行
dbca -silent -deleteInstance -nodeList racc -gdbName updb
-instanceName updb3 -sysDBAUserName sys -sysDBAPassword oracle
2.delete database
racc:
cd /u01/oracle/11g/oui/bin
./runInstaller -updateNodeList ORACLE_HOME=/u01/oracle/11g
"CLUSTER_NODES={racc}" -local
raca:
/u01/oracle/11g/oui/bin
./runInstaller -updateNodeList ORACLE_HOME=/u01/oracle/11g
"CLUSTER_NODES={raca,racb}"
3.delete clusterware
racc:
# /u01/grid/11g/crs/install/rootcrs.pl -deconfig -force -deinstall //停掉服務
raca:
#crsctl delete node -n racc //如果crsctl這條命令說找不到,我們就切換到oracle用戶的下,給grid的環境變量,crsctl命令可以找到了,which crsctl 可以找到路徑。回到root用戶下,然后用絕對路徑來執行這個命令
[root@raca ~]# su – oracle [oracle@raca ~]$ . .grid [oracle@raca ~]$ which crsctl /u01/grid/11g/bin/crsctl [oracle@raca ~]$ exit logout [root@raca ~]# /u01/grid/11g/bin/crsctl delete node -n racb CRS-4661: Node racb successfully deleted.
racc:
$cd /u01/oracle/11g/oui/bin
./runInstaller -updateNodeList ORACLE_HOME=/u01/grid/11g
"CLUSTER_NODES={racc}" CRS=TRUE -silent -local
raca:
$cd /u01/oracle/11g/oui/bin
./runInstaller -updateNodeList ORACLE_HOME=/u01/grid/11g
"CLUSTER_NODES={raca,racb}" CRS=TRUE -silent
如果數據庫再次打開后,不能啟動,我們的解決方法
crs_stat -t //發現asm,實例未啟動。我們用下面的方法來接
[root@raca ~]# cat /etc/init/oracle-ohasd.conf # Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved. # # Oracle OHASD startup start on runlevel [35] stop on runlevel [!35] respawn exec /etc/init.d/init.ohasd run >/dev/null 2>&1 </dev/null //將這一句復制下來 vim /etc/rc.local touch /var/lock/subsys/local /etc/init.d/init.ohasd run >/dev/null 2>&1 </dev/null & //將剛才復制的那句添加進去后,重啟電腦
更多關于云服務器,域名注冊,虛擬主機的問題,請訪問三五互聯官網:m.shinetop.cn