部署Oracle 12C R2單實(shí)例數(shù)據(jù)庫(kù)悯森,存儲(chǔ)使用ASM盅蝗,并且使用udev配置磁盤(pán)組的詳細(xì)過(guò)程卧秘。
OS:CentOS 7.3 1611
磁盤(pán)6塊呢袱,3塊10G,3塊50G翅敌。
1. 配置yum源
1)配置國(guó)內(nèi)aliyun的源
wget http://mirrors.aliyun.com/repo/Centos-7.repo -O /etc/yum.repos.d/Centos-7.repo
2)或者使用光盤(pán)制作本地yum源
過(guò)程略
以下語(yǔ)句是為了同時(shí)安裝x86_64和i386的rpm包同時(shí)安裝羞福。
echo 'multilib_policy=all' >> /etc/yum.conf
2. 安裝系統(tǒng)需要的rpm包
yum install gcc gcc-c++ binutils compat-libcap1 compat-libstdc++-33 glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libxcb libX11 libXau libXi libXtst make net-tools nfs-utils smartmontools sysstat xterm unixODBC unixODBC-devel -y
rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
3. 創(chuàng)建用戶和組(這個(gè)包括數(shù)據(jù)庫(kù)的用戶和組)
groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper
groupadd -g 54326 asmadmin
groupadd -g 54327 asmdba
groupadd -g 54328 asmoper
useradd -u 54331 -g oinstall -G dba,oper,asmadmin,asmdba,asmoper oracle
useradd -u 54332 -g oinstall -G dba,oper,asmadmin,asmdba,asmoper grid
4. 修改系統(tǒng)對(duì)用戶使用資源的限制
vi /etc/security/limits.conf
####oracle
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 20480
oracle soft memlock 3145728
oracle hard memlock 3145728
####grid
grid soft nofile 1024
grid hard nofile 65536
grid soft nproc 2047
grid hard nproc 16384
grid soft stack 10240
grid hard stack 20480
5. 修改系統(tǒng)的參數(shù)
vim /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
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
6. 使用Linux的udev創(chuàng)建asm的磁盤(pán)
1)使用fdisk對(duì)磁盤(pán)進(jìn)行分區(qū)。
# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x98d1e6dd.
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p):
Using default response p
Partition number (1-4, default 1):
First sector (2048-20971519, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519):
Using default value 20971519
Partition 1 of type Linux and of size 10 GiB is set
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
2)編輯腳本蚯涮,生成udev的rule文件治专。
vim genasmdisk.sh
#!/bin/bash
cat /dev/null > /etc/udev/rules.d/99-oracle-asmdevices.rules
for i in a b c d e f;
do
echo "KERNEL==\"sd?1\", SUBSYSTEM==\"block\", PROGRAM==\"/usr/lib/udev/scsi_id -g -u -d /dev/\$name\", RESULT==\"`/usr/lib/udev/scsi_id -g -u -d /dev/sd${i}1`\", SYMLINK+=\"asm-disk$i\", OWNER=\"grid\", GROUP=\"asmadmin\", MODE=\"0660\"" >> /etc/udev/rules.d/99-oracle-asmdevices.rules
done
3)執(zhí)行腳本卖陵,生成rule文件
# chmod +x genasmdisk.sh
# ./genasmdisk.sh
# cat /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB098d76e2-9145f9dd", SYMLINK+="asm-diska", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VBf90ff69a-4814bddb", SYMLINK+="asm-diskb", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VBd4b95383-60793e3e", SYMLINK+="asm-diskc", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB6a13abd4-deaab396", SYMLINK+="asm-diskd", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB82560102-e94a69eb", SYMLINK+="asm-diske", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VBadd50d7e-e225b445", SYMLINK+="asm-diskf", OWNER="grid", GROUP="asmadmin", MODE="0660"
4)測(cè)試規(guī)則,并檢查磁盤(pán)的所屬關(guān)系和權(quán)限
# partprobe /dev/sda1
# partprobe /dev/sdb1
# partprobe /dev/sdc1
# partprobe /dev/sdd1
# partprobe /dev/sde1
# partprobe /dev/sdf1
# udevadm test /block/sda/sda1
# ll /dev/asm-disk*
lrwxrwxrwx. 1 root root 4 Apr 30 22:03 /dev/asm-diska -> sda1
lrwxrwxrwx. 1 root root 4 Apr 30 22:03 /dev/asm-diskb -> sdb1
lrwxrwxrwx. 1 root root 4 Apr 30 22:03 /dev/asm-diskc -> sdc1
lrwxrwxrwx. 1 root root 4 Apr 30 22:03 /dev/asm-diskd -> sdd1
lrwxrwxrwx. 1 root root 4 Apr 30 22:03 /dev/asm-diske -> sde1
lrwxrwxrwx. 1 root root 4 Apr 30 22:03 /dev/asm-diskf -> sdf1
7. 創(chuàng)建安裝目錄和相關(guān)環(huán)境變量
# mkdir -p /u01/app/{grid,oracle}
# chown -R oracle:oinstall /u01/app
# chown -R grid:oinstall /u01/app/grid/
# su - grid
$ unzip linuxx64_12201_grid_home.zip
$ mv grid /u01/app/grid/12.2.0.1
編輯環(huán)境變量张峰。
$ vim .bash_profile
$ cat .bash_profile
# .bash_profile
export ORACLE_SID=+ASM
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=$ORACLE_BASE/12.2.0.1
PATH=$ORACLE_BASE/bin:$ORACLE_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin
export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
export PATH
umask 022
8. 安裝Grid泪蔫,配置ASM
$ cd /u01/app/grid/12.2.0.1/
$ ./gridSetup.sh
僅僅安裝grid,配置ASM喘批。
修改ASM發(fā)現(xiàn)路徑撩荣,按照前面udev定義的路徑進(jìn)行配置。
選擇磁盤(pán)饶深,定義磁盤(pán)組名稱婿滓。
配置ASM管理用戶密碼。
配置EM(由于測(cè)試使用粥喜,沒(méi)有配置)
配置組權(quán)限,默認(rèn)即可橘券。
指定安裝路徑额湘,默認(rèn)。
創(chuàng)建Invertory旁舰,默認(rèn)锋华,注意目錄創(chuàng)建、屬主箭窜、權(quán)限等配置毯焕。
根據(jù)顯示的問(wèn)題,進(jìn)行解決磺樱。
# find /u01/app/grid -name cvuqdisk*
/u01/app/grid/12.2.0.1/cv/rpm/cvuqdisk-1.0.10-1.rpm
/u01/app/grid/12.2.0.1/cv/remenv/cvuqdisk-1.0.10-1.rpm
#
# rpm -ivh /u01/app/grid/12.2.0.1/cv/rpm/cvuqdisk-1.0.10-1.rpm
Preparing... ################################# [100%]
Using default group oinstall to install package
Updating / installing...
1:cvuqdisk-1.0.10-1 ################################# [100%]
然后重新檢查纳猫。
安裝信息匯總。
開(kāi)始安裝竹捉。
以上完成了ASM安裝配置,下面開(kāi)始安裝數(shù)據(jù)庫(kù)軟件以及數(shù)據(jù)庫(kù)實(shí)例块差。
9 . 安裝數(shù)據(jù)庫(kù)軟件
# su - oracle
$ cd database
$ ./runInstaller
此處出于測(cè)試目的侵续,全部為空,點(diǎn)擊下一步憨闰。
選擇“僅安裝數(shù)據(jù)庫(kù)軟件”状蜗。
選擇“單實(shí)例”。
執(zhí)行此腳本鹉动。
10. 安裝數(shù)據(jù)庫(kù)實(shí)例
$ vim .bash_profile
# .bash_profile
export ORACLE_SID=ORCL
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1
PATH=$ORACLE_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin
export PATH
$ dbca
參考資料:
http://blog.yannickjaquier.com/oracle/asm-on-red-hat-7-and-oel-7-with-udev.html
http://www.cnblogs.com/sunmengbbm/p/5651984.html