总体上说,12c RAC的安装基本和11g的一致。
先整个简单版的12c RAC(不启用dns,不启用flex cluster,不启用admin policy),基于Oracle Linux Release 6 Update 4 for x86_64 (64 Bit),安装在virtualbox 4.2.14上。
一、virtualbox(vbox)的部署:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 |
1.点击“新建”,选择类型为linux,版本为oracle(64位),主机名取名叫ol6-121-rac1 2.内存大小我设置了3000M,建议设置为4000M以上。 3.现在创建虚拟硬盘 4.选择VDI 5.选择动态分配 6.分配硬盘大小为30G 7.网卡1为host-only,网卡2为内部网络 8.存储-控制器IDE,选择linux的ISO镜像 9.点击启动,开始安装,注swap的大小最好大于4G,我填的比较小,只有3G,因此后面安装的时候会有warning,但也不影响。 10.安装时选择下面的package: Base System > Base Base System > Compatibility libraries Base System > Hardware monitoring utilities Base System > Large Systems Performance Base System > Network file system client Base System > Performance Tools Base System > Perl Support Servers > Server Platform Servers > System administration tools Desktops > Desktop Desktops > Desktop Platform Desktops > Fonts Desktops > General Purpose Desktop Desktops > Graphical Administration Tools Desktops > Input Methods Desktops > X Window System Applications > Internet Browser Development > Additional Development Development > Development Tools 11.在 /etc/sysctl.conf添加: fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500 12.在/etc/security/limits.conf添加: oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768 13.安装rpm包: rpm -Uvh *binutils* rpm -Uvh *compat-libcap1* rpm -Uvh *compat-libstdc++-33* rpm -Uvh *gcc* rpm -Uvh *gcc-c++* rpm -Uvh *glibc* rpm -Uvh *glibc-devel* rpm -Uvh *ksh* rpm -Uvh *libgcc* rpm -Uvh *libstdc++* rpm -Uvh *libstdc++-devel* rpm -Uvh *libaio* rpm -Uvh *libaio-devel* rpm -Uvh *libXext* rpm -Uvh *libXtst* rpm -Uvh *libX11* rpm -Uvh *libXau* rpm -Uvh *libxcb* rpm -Uvh *libXi* rpm -Uvh *make* rpm -Uvh *sysstat* rpm -Uvh *unixODBC* rpm -Uvh *unixODBC-devel* 14.新建oracle用户 groupadd -g 54321 oinstall groupadd -g 54322 dba groupadd -g 54323 oper groupadd -g 54324 backupdba groupadd -g 54325 dgdba groupadd -g 54326 kmdba groupadd -g 54327 asmdba groupadd -g 54328 asmoper groupadd -g 54329 asmadmin useradd -u 54321 -g oinstall -G dba,oper oracle 15.设置oracle用户的密码: passwd oracle 16.设置/etc/hosts 127.0.0.1 localhost.localdomain localhost # Public 192.168.56.101 ol6-121-rac1.localdomain ol6-121-rac1 192.168.56.102 ol6-121-rac2.localdomain ol6-121-rac2 # Private 192.168.1.101 ol6-121-rac1-priv.localdomain ol6-121-rac1-priv 192.168.1.102 ol6-121-rac2-priv.localdomain ol6-121-rac2-priv # Virtual 192.168.56.103 ol6-121-rac1-vip.localdomain ol6-121-rac1-vip 192.168.56.104 ol6-121-rac2-vip.localdomain ol6-121-rac2-vip # SCAN 192.168.56.105 ol6-121-scan.localdomain ol6-121-scan 192.168.56.106 ol6-121-scan.localdomain ol6-121-scan 192.168.56.107 ol6-121-scan.localdomain ol6-121-scan 17.修改/etc/security/limits.d/90-nproc.conf 将下面的一行: * soft nproc 1024 改成: * - nproc 16384 18.修改SELINUX: 修改/etc/selinux/config为: SELINUX=permissive 19.关闭防火墙: # service iptables stop # chkconfig iptables off |
二、设置oracle用户的环境:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
1.建立目录 mkdir -p /u01/app/12.1.0.1/grid mkdir -p /u01/app/oracle/product/12.1.0.1/db_1 chown -R oracle:oinstall /u01 chmod -R 775 /u01/ 2.设置oracle用户环境变量: # Oracle Settings export TMP=/tmp export TMPDIR=$TMP export ORACLE_HOSTNAME=ol6-121-rac1.localdomain export ORACLE_UNQNAME=CDBRAC export ORACLE_BASE=/u01/app/oracle export GRID_HOME=/u01/app/12.1.0.1/grid export DB_HOME=$ORACLE_BASE/product/12.1.0.1/db_1 export ORACLE_HOME=$DB_HOME export ORACLE_SID=cdbrac1 export ORACLE_TERM=xterm export BASE_PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$BASE_PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib alias grid_env='. /home/oracle/grid_env' alias db_env='. /home/oracle/db_env' 13.由于我们不建立grid用户,我们只在oracle用户下建立2个环境变量grid_env和db_env来加载环境,不需要切换用户。 建立/home/oracle/grid_env文件如下: export ORACLE_SID=+ASM1 export ORACLE_HOME=$GRID_HOME export PATH=$ORACLE_HOME/bin:$BASE_PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib 14.建立/home/oracle/db_env文件如下: export ORACLE_SID=cdbrac1 export ORACLE_HOME=$DB_HOME export PATH=$ORACLE_HOME/bin:$BASE_PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib 15.测试一下: [root@ol6-121-rac1 ~]# su - oracle [oracle@ol6-121-rac1 ~]$ grid_env [oracle@ol6-121-rac1 ~]$ echo $ORACLE_HOME /u01/app/12.1.0.1/grid [oracle@ol6-121-rac1 ~]$ [oracle@ol6-121-rac1 ~]$ db_env [oracle@ol6-121-rac1 ~]$ echo $ORACLE_HOME /u01/app/oracle/product/12.1.0.1/db_1 |
三、安装vbox的Guest Additions
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
1.在vbox管理器界面,选择我们的ol6-121-rac1的机器,点击设置,进存储-控制器IDE,点右边的分配光驱,选择一个虚拟光盘,X:\Program Files\Oracle\VirtualBox\VBoxGuestAdditions.iso 2.运行: cd /media/VBOXADDITIONS_4.2.14_86644 sh ./VBoxLinuxAdditions.run 3.安装完Guest Additions,之后,就可以使用vbox的共享文件夹功能了。但是,为了能让oracle用户访问共享文件夹,需要给oracle用户加vboxsf组: # usermod -G vboxsf,dba oracle # id oracle uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba),54323(vboxsf) 4.好了,你可以在你的目录解压缩你下载的安装介质了。 unzip linuxamd64_12c_grid_1of2.zip unzip linuxamd64_12c_grid_2of2.zip unzip linuxamd64_12c_database_1of2.zip unzip linuxamd64_12c_database_2of2.zip 注意在windows下,解压出来的要合并成2个目录,database和grid 5.在vbox管理器界面,选择我们的ol6-121-rac1的机器,点击设置,进共享文件夹,点加号,然后勾上 "自动挂载" 和"固定分配" 6.安装在共享文件夹中的grid目录中的cvu: cd /media/sf_12cR1/grid/rpm rpm -Uvh cvuqdisk-1.0.9-1.rpm |
四、创建asm的共享盘
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
1.关闭虚拟机ol6-121-rac1 2.创建共享asm盘,共4个asm盘,每个盘5G大小: E:\>cd E:\Oralce_Virtual_Box\ol6-121-rac E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage createhd --filename asm1.vdi --size 5120 --format VDI --variant Fixed E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage createhd --filename asm2.vdi --size 5120 --format VDI --variant Fixed E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage createhd --filename asm3.vdi --size 5120 --format VDI --variant Fixed E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage createhd --filename asm4.vdi --size 5120 --format VDI --variant Fixed 3.将创建的asm盘attach到虚拟机ol6-121-rac1上 E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage storageattach ol6-121-rac1 --storagectl "SATA" --port 1 --device 0 --type hdd --medium asm1.vdi --mtype shareable E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage storageattach ol6-121-rac1 --storagectl "SATA" --port 2 --device 0 --type hdd --medium asm2.vdi --mtype shareable E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage storageattach ol6-121-rac1 --storagectl "SATA" --port 3 --device 0 --type hdd --medium asm3.vdi --mtype shareable E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage storageattach ol6-121-rac1 --storagectl "SATA" --port 4 --device 0 --type hdd --medium asm4.vdi --mtype shareable 4.将这些共享盘设置为可共享的: E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage modifyhd asm1.vdi --type shareable E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage modifyhd asm2.vdi --type shareable E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage modifyhd asm3.vdi --type shareable E:\Oralce_Virtual_Box\ol6-121-rac>VBoxManage modifyhd asm4.vdi --type shareable 5.启动虚拟机 |
五、将刚刚加的共享盘用udev加到主机上:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
1.将硬盘分区,检查下新加的4块盘: # cd /dev # ls sd* sda sda1 sda2 sdb sdc sdd sde 2. fdisk分区 fdisk /dev/sdb 输入n p 1 回车 回车 w 同理fdisk /dev/sdc,fdisk /dev/sdd,fdisk /dev/sde 3.分区完成后,检查看看: # cd /dev # ls sd* sda sda1 sda2 sdb sdb1 sdc sdc1 sdd sdd1 sde sde1 4.在/etc/scsi_id.config添加: options=-g 5.查找SCSI ID [root@ol6-121-rac1 dev]# /sbin/scsi_id -g -u -d /dev/sdb [root@ol6-121-rac1 dev]# /sbin/scsi_id -g -u -d /dev/sdc [root@ol6-121-rac1 dev]# /sbin/scsi_id -g -u -d /dev/sdd [root@ol6-121-rac1 dev]# /sbin/scsi_id -g -u -d /dev/sde 我的显示如下: 1ATA_VBOX_HARDDISK_VBd468bcab-b01d8894 1ATA_VBOX_HARDDISK_VBc1b0c3f0-162d709a 1ATA_VBOX_HARDDISK_VB527c91e6-934cf458 1ATA_VBOX_HARDDISK_VB59bb6d05-167b1e5f 6.在文件/etc/udev/rules.d/99-oracle-asmdevices.rules中添加刚刚查到的SCSI ID信息,进行绑定: KERNEL=="sd?1", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VBd468bcab-b01d8894", NAME="asm-disk1", OWNER="oracle", GROUP="dba", MODE="0660" KERNEL=="sd?1", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VBc1b0c3f0-162d709a", NAME="asm-disk2", OWNER="oracle", GROUP="dba", MODE="0660" KERNEL=="sd?1", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VB527c91e6-934cf458", NAME="asm-disk3", OWNER="oracle", GROUP="dba", MODE="0660" KERNEL=="sd?1", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VB59bb6d05-167b1e5f", NAME="asm-disk4", OWNER="oracle", GROUP="dba", MODE="0660" 7.更新: # /sbin/partprobe /dev/sdb1 # /sbin/partprobe /dev/sdc1 # /sbin/partprobe /dev/sdd1 # /sbin/partprobe /dev/sde1 8.重启服务: # /sbin/udevadm control --reload-rules # /sbin/start_udev 9.检查asm磁盘是否已经存在: # ls -al /dev/asm* brw-rw---- 1 oracle dba 8, 17 Oct 12 14:39 /dev/asm-disk1 brw-rw---- 1 oracle dba 8, 33 Oct 12 14:38 /dev/asm-disk2 brw-rw---- 1 oracle dba 8, 49 Oct 12 14:39 /dev/asm-disk3 brw-rw---- 1 oracle dba 8, 65 Oct 12 14:39 /dev/asm-disk4 # |
六、克隆主机ol6-121-rac1为ol6-121-rac2:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
1.克隆主机: E:\Oralce_Virtual_Box>cd ol6-121-rac1 E:\Oralce_Virtual_Box\ol6-121-rac1>VBoxManage clonehd ol6-121-rac1.vdi ol6-121-rac2.vdi E:\Oralce_Virtual_Box\ol6-121-rac1> 2.在vbox管理器界面,点击新建,选择和ol6-121-rac1一样的类型和版本,内存也一样,后面选择“使用已有的虚拟硬盘文件”,然后选择ol6-121-rac2.vdi 3.也添加asm共享硬盘: VBoxManage storageattach ol6-121-rac2 --storagectl "SATA" --port 1 --device 0 --type hdd --medium asm1.vdi --mtype shareable VBoxManage storageattach ol6-121-rac2 --storagectl "SATA" --port 2 --device 0 --type hdd --medium asm2.vdi --mtype shareable VBoxManage storageattach ol6-121-rac2 --storagectl "SATA" --port 3 --device 0 --type hdd --medium asm3.vdi --mtype shareable VBoxManage storageattach ol6-121-rac2 --storagectl "SATA" --port 4 --device 0 --type hdd --medium asm4.vdi --mtype shareable 4.启动后主机,搞一下网络: 清空/etc/udev/rules.d 点击system-preferences-network connections,中的所有的网卡 重启主机 ifconfig,看到eth0和eth1两块网卡的mac地址,在进system-preferences-network connections,add wire网卡,MAC地址填入我们刚刚看到的,IPv4的地址写入和ol6-121-rac1类似的。 # service network restart 重启网络之后,就可以连上去了。注意两个主机的一致性,如都是eth0为public网卡,eth1为private网卡。 5.检查安装前的条件是否满足: [oracle@ol6-121-rac1 grid]$ ./runcluvfy.sh stage -pre crsinst -n ol6-121-rac1,ol6-121-rac2 -verbose 有3个fail可以忽略,dns,/etc/resolv.conf和swap |
至此,12c RAC数据库数据库已经安装完毕,enjoy.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
SQL*Plus: Release 12.1.0.1.0 Production on Sat Jul 6 10:38:42 2013 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, Advanced Analytics and Real Application Testing options SQL> select instance_name,status from gv$instance order by 1; INSTANCE_NAME STATUS ---------------- ------------ cdbrac1 OPEN cdbrac2 OPEN SQL> |
ps:如果遇到启动数据库时报错ORA-00845: MEMORY_TARGET not supported on this system
那应该是/dev/shm不够大引起,修改/etc/fstab中的:
tmpfs /dev/shm tmpfs defaults 0 0
修改为:
tmpfs /dev/shm tmpfs defaults,size=3g 0 0
重启主机后再重启数据库即可。
2条评论
弄个rac,笔记本8G内存吃得消吗
re ggf0626:吃得消,内存不是问题,主要是IO,会拖得很慢。