Linux虚拟机下配置Oracle(ASM) RAC.docx

上传人:牧羊曲112 文档编号:1663052 上传时间:2022-12-13 格式:DOCX 页数:78 大小:3.86MB
返回 下载 相关 举报
Linux虚拟机下配置Oracle(ASM) RAC.docx_第1页
第1页 / 共78页
Linux虚拟机下配置Oracle(ASM) RAC.docx_第2页
第2页 / 共78页
Linux虚拟机下配置Oracle(ASM) RAC.docx_第3页
第3页 / 共78页
Linux虚拟机下配置Oracle(ASM) RAC.docx_第4页
第4页 / 共78页
Linux虚拟机下配置Oracle(ASM) RAC.docx_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《Linux虚拟机下配置Oracle(ASM) RAC.docx》由会员分享,可在线阅读,更多相关《Linux虚拟机下配置Oracle(ASM) RAC.docx(78页珍藏版)》请在三一办公上搜索。

1、Linux虚拟机下配置ORACLE(ASM) RAC用友软件股份有限公司王辉wanghui0012008-11-15第一部分:硬件要求和概述1.1主机操作系统环境概况主机名操作系统处理器内存磁盘网卡pacuWindows XP Professional Service Pack 2(32 位)Intel Pentium 4 550, 3.4MHz, HT2 GB DDR2 SDRAM, 533 MHz250 GB, Ultra ATA/133, 7200 RPMIntel Pro/1000 MT1.2客户操作系统环境概况主机名操作系统处理器内存rac1Oracle Enterprise Lin

2、ux 4(32 位)1700 MBrac2Oracle Enterprise Linux 4(32 位)1700 MB1.3虚拟磁盘布局概况主机操作系统上的虚拟磁盘客户操作系统上的虚拟磁盘虚拟设备节点大小 (MB)描述d:vmraclocaldisk.vmdk/dev/sda1/dev/sda2/dev/sda3SCSI 0:020“/”挂载点交换空间 Oracle 二进制文件 d:vmracsharedstorageocfs2disk.vmdk/dev/sdbSCSI 1:0512OCFS2 磁盘d:vmracsharedstorageasmdisk1.vmdk/dev/sdcSCSI 1:

3、13072ASM 磁盘组 1d:vmracsharedstorageasmdisk2.vmdk/dev/sddSCSI 1:23072ASM 磁盘组 1d:vmracsharedstorageasmdisk3.vmdk/dev/sdeSCSI 1:32048ASM 闪回恢复区(要配置共享存储,客户 OS 不能与共享存储共享同一个 SCSI 总线。指定客户 OS 使用 SCSI0,共享磁盘使用 SCSI1。)1.4 RAC 数据库环境概况主机名ASM 实例名RAC 实例名 数据库名数据库文件存储OCR 与表决磁盘 (Voting Disk)rac1+ASM1devdb1devdbASMOCFS2

4、rac2+ASM2devdb2devdbASMOCFS2您将在每个节点上安装 Oracle 主目录供冗余使用。每个节点上的 ASM 和 Oracle RAC 实例共享同一个 Oracle 主目录。第二部分:配置虚拟机2.1创建虚拟机网络连接选择桥接方式并且分配10G空间2.2创建共享磁盘创建四个虚拟 SCSI 硬盘:ocfs2disk.vmdk (512MB)、asmdisk1.vmdk (3GB)、asmdisk2.vmdk (3GB) 和 asmdisk3.vmdk (2GB)。选择 Allocate all disk space now。如果您希望节省空间,则不必分配所有磁盘空间。出于性

5、能方面的考虑,您需要为每个虚拟共享磁盘预先分配所有磁盘空间。特别是在 Oracle 数据库创建期间或者当数据库的 DML 活动较频繁时,如果共享磁盘的大小增长快速,虚拟机可能会间歇挂起一段较短的时间甚至崩溃,(这种情况很少见)。其他三个虚拟共享磁盘同理。2.3虚拟网卡共享磁盘和网卡都配置好以后如下:2.4修改虚拟机配置文件还需要设置其他参数以启用两个虚拟 RAC 节点之间的磁盘共享。打开配置文件 rac1Red Hat Enterprise Linux 4.vmx,并添加下面列出的粗体参数。 config.version = 8virtualHW.version = 4scsi0.presen

6、t = TRUEscsi0.virtualDev = lsilogicmemsize = 700scsi0:0.present = TRUEscsi0:0.fileName = localdisk.vmdkide1:0.present = TRUEide1:0.fileName = auto detectide1:0.deviceType = cdrom-rawfloppy0.fileName = A:Ethernet0.present = TRUEdisplayName = rac1guestOS = rhel4priority.grabbed = normalpriority.ungrab

7、bed = normaldisk.locking = FALSEdiskLib.dataCacheMaxSize = 0scsi1.sharedBus = virtualscsi1.present = TRUEscsi1:0.present = TRUEscsi1:0.fileName = D:vmracsharedstorageocfs2disk.vmdkscsi1:0.mode = independent-persistentscsi1:0.deviceType = diskscsi1:1.present = TRUEscsi1:1.fileName = D:vmracsharedstor

8、ageasmdisk1.vmdkscsi1:1.mode = independent-persistentscsi1:1.deviceType = diskscsi1:2.present = TRUEscsi1:2.fileName = D:vmracsharedstorageasmdisk2.vmdkscsi1:2.mode = independent-persistentscsi1:2.deviceType = diskscsi1:3.present = TRUEscsi1:3.fileName = D:vmracsharedstorageasmdisk3.vmdkscsi1:3.mode

9、 = independent-persistentscsi1:3.deviceType = diskscsi1.virtualDev = lsilogicide1:0.autodetect = TRUEfloppy0.present = FALSEEthernet1.present = TRUEEthernet1.connectionType = hostonly2.5安装Linux在www.centos.org网站上下载centos4.6-binDVD介质配置IP地址2.6安装VMWare Tool登录系统,桌面上有个一个光盘,是刚刚用来装操作系统的光盘,将其弹出执行vmware-confi

10、g-tool.pl包选择分辨率同步虚拟机和宿主机的时间Vi /boot/grub/grub.conf添加参数clock=pit nosmp noapic nolapic重新启动2.7创建Oracle组和用户groupadd oinstallgroupadd dbamkdir -p /u01/oracle /ocfsuseradd -d /u01/oracle -g oinstall -G dba oraclechown oracle:dba /u01/oracle /ocfspasswd oracle编辑profile文件su oraclevi .bash_profileexport PS1=

11、/bin/hostname -s- export EDITOR=viexport ORACLE_SID=devdb1export ORACLE_BASE=/u01/oracleexport ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1export LD_LIBRARY_PATH=$ORACLE_HOME/libexport PATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:$PATH2.8配置参数创建文件系统目录ra

12、c1- mkdir -p $ORACLE_BASE/adminrac1- mkdir -p $ORACLE_HOMErac1- mkdir -p $ORA_CRS_HOMErac1- mkdir -p /u01/oracle/oradata/devdb添加oracle用户的shell限制使用root用户执行/etc/security/limits.conf oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536/etc/pam.d/login session req

13、uired /lib/security/pam_limits.so/etc/profile if $USER = oracle ; thenif $SHELL = /bin/ksh ; thenulimit -p 16384ulimit -n 65536elseulimit -u 16384 -n 65536fifi安装 Enterprise Linux 软件程序包。安装 Oracle 软件需要以下附加程序包。如果您已经安装了 64 位版本的 Enterprise Linux,则安装程序应该已安装了这些程序包。 libaio-0.3.105-2.i386.rpm openmotif21-2.1

14、.30-11.RHEL4.6.i386.rpm 执行当前目录下所有rpm文件rpm -Uvh *.rpm配置内核参数。使用文本编辑器将下面列出的行添加到 /etc/sysctl.conf。要使更改立即生效,请执行 /sbin/sysctl p。 # more /etc/sysctl.confkernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096kernel.sem = 250 32000 100 128fs.file-max = 65536net.ipv4.ip_local_port_range = 1024

15、65000net.core.rmem_default = 1048576net.core.rmem_max = 1048576net.core.wmem_default = 262144net.core.wmem_max = 262144编辑hosts文件vi /etc/hosts配置 hangcheck timer 内核模块。hangcheck timer 内核模块可监控系统的运行情况,并重新启动出现故障的 RAC 节点。它使用两个参数,即 hangcheck_tick(定义系统检查频率)和 hangcheck_margin(定义在重置 RAC 节点前的最大挂起延时)来确定节点是否出现故障。

16、 在 /etc/modprobe.conf 中添加以下行,以设置 hangcheck 内核模块参数。 /etc/modprobe.confoptions hangcheck-timer hangcheck_tick=30 hangcheck_margin=180要立即加载模块,执行“modprobe -v hangcheck-timer”。 2.9创建磁盘分区在每一个共享磁盘上都创建一个分区,创建分区的命令:fdisk /dev/sda创建完成后,如下图2.10为ASM 磁盘映射原始设备仅当您打算使用标准 Linux I/O 创建 ASM 磁盘时,才需要原始设备映射。创建 ASM 磁盘的另一个

17、方法是使用 Oracle 提供的 ASM 库驱动程序。稍后,您将使用 ASM 库驱动程序配置 ASM 磁盘。 执行以下任务,将原始设备映射到先前创建的共享分区。每次引导集群节点时,原始设备都必须与块设备绑定。 将以下行添加到 /etc/sysconfig/rawdevices 中。/dev/raw/raw1 /dev/sdc1/dev/raw/raw2 /dev/sdd1/dev/raw/raw3 /dev/sde1要使映射立即生效,以 root 用户身份执行以下命令# /sbin/service rawdevices restartAssigning devices: /dev/raw/ra

18、w1 - /dev/sdc1/dev/raw/raw1: bound to major 8, minor 33 /dev/raw/raw2 - /dev/sdd1/dev/raw/raw2: bound to major 8, minor 49 /dev/raw/raw3 - /dev/sde1/dev/raw/raw3: bound to major 8, minor 65Done更改所属和权限cd /dev/rawchown oracle:dba /dev/raw/raw*chmod 600 /dev/raw/raw*以 oracle 用户身份执行rac1- ln -sf /dev/raw

19、/raw1 /u01/oradata/devdb/asmdisk1rac1- ln -sf /dev/raw/raw2 /u01/oradata/devdb/asmdisk2rac1- ln -sf /dev/raw/raw3 /u01/oradata/devdb/asmdisk3修改 /etc/udev/permissions.d/50-udev.permissions。原始设备在引导时会重新映射。默认情况下,在引导时原始设备的拥有者将更改为 root 用户。如果拥有者不是 oracle 用户,则 ASM 在访问共享分区时会出现问题。在 /etc/udev/permissions.d/50-

20、udev.permissions 中为原始行“raw/*:root:disk:0660”添加注释,然后添加一个新行“raw/*:oracle:dba:0660”。# raw devicesram*:root:disk:0660#raw/*:root:disk:0660raw/*:oracle:dba:06602.11复制虚拟机将RAC1拷贝到RAC2目录下,更改IP地址更改MAC地址重新启动网络服务Service network restart以oracle用户登录,更改profile文件,用devdb2 替换 ORACLE_SID 的值2.12建立SSH互信在RAC1和RAC2上执行相同的操

21、作rac1- mkdir /.sshrac1- chmod 700 /.sshrac1- ssh-keygen -t rsaGenerating public/private rsa key pair.Enter file in which to save the key (/export/home/oracle/.ssh/id_rsa):Enter passphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved in /export/home/oracle/

22、.ssh/id_rsa.Your public key has been saved in /export/home/oracle/.ssh/id_rsa.pub.The key fingerprint is:87:54:4f:92:ba:ed:7b:51:5d:1d:59:5b:f9:44:da:b6 oraclerac1- ssh-keygen -t dsaGenerating public/private dsa key pair.Enter file in which to save the key (/export/home/oracle/.ssh/id_dsa):Enter pas

23、sphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved in /export/home/oracle/.ssh/id_dsa.Your public key has been saved in /export/home/oracle/.ssh/id_dsa.pub.The key fingerprint is:31:76:96:e6:fc:b7:25:04:fd:70:42:04:1f:fc:9a:26 oracle只在 RAC1 上执行 rac1- cat

24、 /.ssh/id_rsa.pub /.ssh/authorized_keysrac1- cat /.ssh/id_dsa.pub /.ssh/authorized_keysrac1- ssh rac2 cat /.ssh/id_rsa.pub /.ssh/authorized_keysThe authenticity of host rac2 (192.168.2.132) cant be established.RSA key fingerprint is 63:d3:52:d4:4d:e2:cb:ac:8d:4a:66:9f:f1:ab:28:1f.Are you sure you wa

25、nt to continue connecting (yes/no)? yesWarning: Permanently added rac2,192.168.2.132 (RSA) to the list of known hosts.oraclerac2s password:rac1- ssh rac2 cat /.ssh/id_dsa.pub /.ssh/authorized_keysoraclerac2s password:rac1- scp /.ssh/authorized_keys rac2:/.ssh/authorized_keysoraclerac2s password:auth

26、orized_keys 100% 1716 1.7KB/s 00:00测试连接在每个节点上测试连接。验证当您再次运行以下命令时,系统是否不提示您输入口令。 ssh rac1 datessh rac2 datessh rac1-priv datessh rac2-priv datessh datessh datessh rac1- datessh rac2- date第三部分:配置Oracle ASM3.1配置ASMLib以 root 用户身份在两个节点上配置 ASMLib第一次执行到Initializing the Oracle ASMLib drive这一步就报出failed,我怀疑是我的o

27、racleasm这几个包不匹配造成的,于是去网上重新下载了对应版本的oracleasm-support-2.1.0-1.el4.i386.rpm,oracleasm-2.6.9-67.ELsmp-2.0.3-1.i686.rpm(ELsmp表示多处理器,如果有多个CPU一定要选择ELsmp版本),oracleasmlib-2.0.2-1.i386.rpm。卸载掉已经安装的上述三个包,命令:rpm e filename然后安装,这三个包邮依赖关系,要先安装support,然后安装oracleasm,然后是librootrac1 soft# rpm -ivh oracleasm-support-2

28、.1.0-1.el4.i386.rpm Preparing. # 100% 1:oracleasm-support # 100%rootrac1 soft# rpm -ivh oracleasm-2.6.9-67.ELsmp-2.0.3-1.i686.rpm Preparing. # 100% 1:oracleasm-2.6.9-67.ELsm# 100%rootrac1 soft# rpm -ivh oracleasmlib-2.0.2-1.i386.rpm Preparing. # 100% 1:oracleasmlib # 100%开始执行配置rootrac2 soft# /etc/in

29、it.d/oracleasm configureConfiguring the Oracle ASM library driver.This will configure the on-boot properties of the Oracle ASM librarydriver. The following questions will determine whether the driver isloaded on boot and what permissions it will have. The current valueswill be shown in brackets ().

30、Hitting without typing ananswer will keep that current value. Ctrl-C will abort.Default user to own the driver interface oracle: Default group to own the driver interface dba: Start Oracle ASM library driver on boot (y/n) y: Scan for Oracle ASM disks on boot (y/n) y: Writing Oracle ASM library drive

31、r configuration: doneInitializing the Oracle ASMLib driver: OK Scanning the system for Oracle ASMLib disks: OK 成功,OK,但是Writing Oracle ASM library driver configuration: done,不是OK,不知道是怎么回事,先不管它。3.2创建ASM磁盘以 root 用户身份在任何一个节点上创建 ASM 磁盘rootrac2 soft# /etc/init.d/oracleasm createdisk VOL1 /dev/sdc1Marking

32、disk VOL1 as an ASM disk: OK rootrac2 soft# /etc/init.d/oracleasm createdisk VOL2 /dev/sdd1Marking disk VOL2 as an ASM disk: OK rootrac2 soft# /etc/init.d/oracleasm createdisk VOL3 /dev/sde1Marking disk VOL3 as an ASM disk: OK rootrac2 soft# /etc/init.d/oracleasm scandisksScanning the system for Ora

33、cle ASMLib disks: OK rootrac2 soft# /etc/init.d/oracleasm listdisksVOL1VOL2VOL3rootrac2 soft#第四部分:配置 Oracle OCFS24.1配置IP运行/usr/sbin/ocfs2console,选择 Clucster-Configure Nodes ,老是出现:“Could not start cluster stack.This must be resolved before any ocfs2.去网上搜索一下:原因:1。要disable selinux安全!编辑 /etc/selinux/con

34、fig 文件,设置SELINUX=disabled 并重新启动系统。2。安装的ocfs2包一定要对应正确的内核版本!uname -r,如果显示2.6.9-22.ELsmp,有smp字样,表示是多处理器的,要用类似ocfs2-2.6.9-22.ELsmp-1.0.7-1.i686.rpm,带ELsmp的包!去网上下载对应版本的包,卸载后安装,在执行,OK,界面出来了添加两个节点的ip信息点击应用,报出如下错误,还得去网上搜索,有人说要删除/etc/ocfs2/cluster.conf文件删除以后,在重新配置IP,点击应用,OK了,哈哈,奇怪,什么问题!将该文件同步到另一台机器中去4.2配置O2C

35、B驱动程序在两个节点上执行下面的过程,将 O2CB 配置为在引导时启动。rootrac1 ocfs2# /etc/init.d/o2cb unloadStopping O2CB cluster ocfs2: OKUnmounting ocfs2_dlmfs filesystem: OKUnloading module ocfs2_dlmfs: OKUnmounting configfs filesystem: OKUnloading module configfs: OKrootrac1 ocfs2# /etc/init.d/o2cb configureConfiguring the O2CB

36、 driver.This will configure the on-boot properties of the O2CB driver.The following questions will determine whether the driver is loaded onboot. The current values will be shown in brackets (). Hitting without typing an answer will keep that current value. Ctrl-Cwill abort.rootrac1 ocfs2# /etc/init

37、.d/o2cb configureConfiguring the O2CB driver.This will configure the on-boot properties of the O2CB driver.The following questions will determine whether the driver is loaded onboot. The current values will be shown in brackets (). Hitting without typing an answer will keep that current value. Ctrl-

38、Cwill abort.Load O2CB driver on boot (y/n) y: yCluster to start on boot (Enter none to clear) ocfs2: Specify heartbeat dead threshold (=7) 31: 61Specify network idle timeout in ms (=5000) 30000: 30000Specify network keepalive delay in ms (=1000) 2000: 2000Specify network reconnect delay in ms (=2000

39、) 2000: 2000Writing O2CB configuration: OKLoading module configfs: OKMounting configfs filesystem at /config: OKLoading module ocfs2_nodemanager: OKLoading module ocfs2_dlm: OKLoading module ocfs2_dlmfs: OKMounting ocfs2_dlmfs filesystem at /dlm: OKStarting O2CB cluster ocfs2: OKrootrac1 ocfs2#4.3格式

40、化文件系统在格式化和挂载文件系统之前,应验证 O2CB 在两个节点上均联机;O2CB 心跳当前没有活动,因为文件系统未挂载rootrac1 ocfs2# /etc/init.d/o2cb statusModule configfs: LoadedFilesystem configfs: MountedModule ocfs2_nodemanager: LoadedModule ocfs2_dlm: LoadedModule ocfs2_dlmfs: LoadedFilesystem ocfs2_dlmfs: MountedChecking O2CB cluster ocfs2: Online

41、Heartbeat dead threshold: 61 Network idle timeout: 30000 Network keepalive delay: 2000 Network reconnect delay: 2000Checking O2CB heartbeat: Not activerootrac1 ocfs2#4.4挂载文件系统要挂载文件系统,在两个节点上执行以下命令。 # mount -t ocfs2 -o datavolume,nointr /dev/sdb1 /ocfs要在引导时挂载文件系统,在两个节点的 /etc/fstab 中添加以下行/dev/sdb1 /ocf

42、s ocfs2 _netdev,datavolume,nointr 0 04.5创建Oracle集群件目录在 OCR 和表决磁盘将驻留的 OCFS2 文件系统中创建目录。 在RAC1上执行# mkdir /ocfs/clusterware# chown -R oracle:dba /ocfs 现在,您已经完成了 OCFS2 的设置。验证您可以在两个节点的共享集群文件系统上读写文件。第五部分:安装Oracle集群件下载后,在 rac1 上以 oracle 用户身份执行通过设置DISPLAY变量,还是不可以,太奇怪,推荐大家一款桌面软件,NX。NX属于CS软件,在服务器端和客户端都要安装的。成功!通过NX可以正常打开安装界面。下面开始安装ORACLE集群件。注意路径不要选择错了报出内存不够,不用搭理它5.1添加节点信息点的Private Node Name和Virtual Host Name。好像不可以填写IP地址。还得去网上查找原因,一下子就找到了可能是SSH的问题。然后我执行了一下 ssh rac1 date ,输入yes。再回来点OK,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号