设为首页 收藏本站
查看: 261|回复: 0

[经验分享] 使用VCS配置Oracle双机

[复制链接]

尚未签到

发表于 2016-6-26 11:46:26 | 显示全部楼层 |阅读模式
  将Oracle的双机放在DB2双机后面讲有两个原因:一是DB2的配置相对于oracle的配置来说比较简单,数据库的模式也比较容易理解,而其中相似的地方可以参照DB2的配置;二是DB2双机的配置,也只能说是oracle双机配置的子集,在了解DB2的双机配置之后,oracle双机配置的很多相似的地方简单说明一下即可。此外,读者可以比较一下这两种模式的异同,有利于读者选择更合适自己的双机配置模式。
  我们随后还将介绍Sybase双机的配置,将Sybase放在最后并不是因为它更复杂,而是因为在这三种数据库之中,Sybase的用户群相对比较少,需要的人不多。
  比较DB2与Oracle数据库
    DB2和Oracle有很多的不同,要想了解清楚,那个不是一朝一夕的功夫了。幸运的是,因为我们现在只是需要做双机配置,所以我们只是在可能会影响配置的概念上,做一个简单的比较。
  1. 配置结构的不同:
    DB2数据库的双机热备只支持一种模式,就是DB2的程序在两台机器上各有一份,只有数据文件存放在共享存储中,如下图所示:
  
 
图1,DB2双机配置结构图
  这种配置模式的优点是有利于数据库的升级,当其中systemA需要升级的时候,就把服务切换到systemB上运行,升级A的DB2程序,之后还可以把服务切换回到A来,然后升级B的DB2程序。这个升级过程不会影响用户的DB2使用,因为总有一台机器可以使用DB2程序来响应用户的服务请求。
  对于oracle来说不但可以支持这种程序存放在不同机器上的做法,而且支持把oracle的程序文件也同时放在共享盘上,其结构图如下所示:
  
  图2,oracle双机结构图-程序在各个服务器上
  
 
图3,oracle双机结构图-程序和数据都在共享盘上
  将数据与程序同时放在共享盘上的优点有两个:一是节省磁盘空间,用户只需要保留一份数据库备份;二是有利于程序的一致性,不会因为数据库版本的不同,产生差异,可以避免产生一些莫名的问题。
  2. 数据库的工作模式不同
    DB2数据库是以实例为基础的:多个硬盘或者服务器组成一个实例,一个实例下面可以划分多个数据库,一个数据库只能属于一个实例。Oracle可以理解为以用户为基础的数据库,不同的用户访问不同的实例,不同的实例其实就是不同的数据库。
  配置Oracle双机系统
  闲话少说,现在开始介绍一下利用VCS来配置oracle双机的过程:
 
    a) 创建数据文件使用的共享存储(在system1上面执行下列5个命令):
    i. # vxdg init oracleDG c0t0d0; 创建磁盘组oracleDG,使用c0t0d0这个硬盘;
    ii. # vxassist -g oracleDG make oracleVol 5g; 在磁盘组上创建5G大小的卷oracleVol;
    iii. # mkfs -F vxfs -o largefiles /dev/vx/rdsk/oracleDG/oracleVol; 创建文件系统;
    iv. # mkdir /oracle ; 创建mount点,共享磁盘将mount到这里;
    v. # mount -F vxfs /dev/vx/dsk/oracleDG/oracleVol /oracle; 将共享盘mount到本机;
  b) 在两台机器上面分别执行下列命令,创建相同的用户组和用户:
    vi. # groupadd -g 500 dba; 创建oracle管理组;
    vii. # useradd -g dba -u 500 -d /home/oracle -m oracle; 创建oracle管理用户;
    注意: 组ID或者用户ID可以是任意尚未被使用的数值,但是一定要保证多台机器必须一致。
  c) 安装oracle程序
    到oracle安装文件的目录下,运行下列命令安装oracle程序
    #.  /runInstaller
    在安装过程中,指定oracle用户为“oracle”。
    注意: 如果需要在多台机器安装oracle,则需要在多台机器运行该程序;如果仅仅想把程序安装在共享盘上面,则仅仅需要在一台机器安装。
    注意: 安装过程中有一步会问用户是否需要配置数据库,我们选择“仅仅安装软件”,我们会在稍后配置数据库文件到共享磁盘。
  d) 配置数据库:
    oracle程序安装完毕后,我们需要配置数据库到共享磁盘上,这样多台机器才能够共享其数据资源;
    # dbca
    运行数据库配置助手来帮助用户安装数据库,注意需要将路径指明到共享磁盘中。
  e) 设置环境变量
    在各个机器的/home/oracle/.profile文件中,设置两个全局变量:
    $ORACLE_HOME=/oracle   该变量指明数据库的安装位置;
    $ORACLE_SID=oracle    该变量指明访问哪个数据库实例;
  f) 安装VCS的oracle代理软件:(以redhat为例)
    # rpm -ivh VRTSvcsor
    # rpm -ivh VRTScsocw
  这样,oracle的安装就完成了。
  1
测试Oracle双机配置
  在安装结束之后,我们需要测试一下oracle能否在多台机器上正常工作。
  a) 将共享盘mount到第一台机器(步骤可以参考DB2双机配置)
  b) 从这台机器登陆数据库并创建一个表
    i. su – oracle 将系统用户切换到oracle用户;
    ii. export $ORACLE_HOME=/oracle; 导出全局变量;
    export $ORACLE_SID=oracle;
    iii. $ORACLE_HOME/bin/sqlplus /nolog 进入数据库模式;
    iv. connect / as sysdba     以系统管理员身份登陆数据库;
    v. create user tester identified by '123456' default tablespace USERS temporary tablespace TEMP quota 100K on    UERS; 创建一个新用户tester;
    vi. grant create session to tester;    赋予新用户tester创建表的权限;
    vii. create table tester.mytime ( tstamp date ); 在tester用户空间下创建一个新表;
    viii. insert into tester.mytime (tstamp) values (SYSDATE); 在新表中插入数据;
    ix. disconnect;       断开连接;
  c) 测试其他集群节点可以工作:
    i. connect tester/123456     以新用户身份登陆数据库;
    ii. update tester.mytime set ( tstamp ) = SYSDATE; 更新表的内容;
    iii. select TO_CHAR(tstamp, ’MON DD, YYYY HH:MI:SS AM’) from tester.mytime; 确认表的内容已经被更新;
    iv. exit 推出。
  在经过这个检查之后,就说明数据库已经正确安装并可以被每个节点正常的访问,测试成功。
  1
配置VCS的oracle代理
  这个过程与DB2的非常相似,唯一的不同在于DB2只有一个主进程工作,监控DB2是否正常工作只需监控这个进程即可。在oracle中有两个进程,一个是数据库运行的主进程,另一个是监控用户请求的进程,两个进程同时工作才能确保oracle的正常运行。所以在oracle代理的配置过程中,需要多添加一个lsnr的资源,用来保证oracle监控进程的正常工作。
  配置好的oracle代理结构如图所示:
  
  图4,oracle代理的配置结构
  按照该图所示,配置oracle代理需要下列资源:
    NIC:提供oracle相应的网卡;
    IP:提供oracle服务的IP地址;
    DiskGroup:共享磁盘组;
    Volume_data:存放oracle共享数据的卷;
    Volume_binary:存放oracle程序的卷(如果程序不是放在共享磁盘,该资源可以忽略);
    Mount_data:数据库共享数据的访问路径;
    Mount_binary:数据库程序的访问路径(如果程序不是放在共享磁盘,该资源可以忽略);
    Oracle:监控oracle进程是否正常工作;
    Netlnsr:监控oracle监听进程是否工作。
  在这些资源都配置好之后,打开VCS的图形界面,可以让该服务组执行上线、下线或者切换,这样,VCS就会自动监控oracle的工作情况,并在某台机器发生故障的时候,自动切换到其他节点继续提供服务。这样,oracle的双机配置就完成了。
  
  本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/ilovemilk/archive/2009/10/27/4735619.aspx

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-235400-1-1.html 上篇帖子: oracle笔记四(DBA管理) 下篇帖子: oracle中性能代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表