Oracle 11g RAC 集群中引入了SCAN(Single Client Access Name)的概念,也就是指集群的单客户端访问名称。SCAN 这个特性为客户端提供了单一的主机名,用于访问集群中运行的 Oracle 数据库。如果您在集群中添加或删除节点,使用 SCAN 的客户端无需更改自己的 TNS 配置。无论集群包含哪些节点,SCAN 资源及其关联的 IP 地址提供了一个稳定的名称供客户端进行连接使用。在Oracle 11g grid 安装时即要求为该特性配置DNS解析方式或GNS解析方式。本文描述了安装Oracle 11g grid时的DNS配置。

  1. 1、安装环境
  2. #配置DNS,可以使用单独的DNS服务器,也可以直接使用RAC的一个节点来提供DNS解析
  3. #直接使用某个节点时,容易出现该节点如果宕机将导致SCAN无法解析,客户端无法连接数据库
  4. #本文仅作演示,使用节点1的public ip用作dns,不考虑上面描述的情形以及DNS安全性等。
  5. [root@node1 ~]# cat /etc/issue
  6. Enterprise Linux Enterprise Linux Server release 5.5 (Carthage)
  7. Kernel \r on an \m
  8. 2、主机节点host信息
  9. [root@node1 ~]# more /etc/hosts
  10. # Do not remove the following line, or various programs
  11. # that require network functionality will fail.
  12. #127.0.0.1              localhost.localdomain localhost
  13. #::1            localhost6.localdomain6 localhost6
  14. 127.0.0.1       localhost.szdb.com   localhost
  15. # Public eth0
  16. 192.168.7.71   node1.szdb.com        node1  #该地址作为DNS服务器地址
  17. 192.168.7.72   node2.szdb.com        node2
  18. #Private eth1
  19. 10.10.7.71   node1-priv.szdb.com   node1-priv
  20. 10.10.7.72   node2-priv.szdb.com   node2-priv
  21. #Virtual
  22. 192.168.7.81   node1-vip.szdb.com    node1-vip
  23. 192.168.7.82   node2-vip.szdb.com    node2-vip
  24. #scan
  25. 192.168.7.91 scan-cluster1.szdb.com  scan-cluster1
  26. 3、配置dns需要用到的安装包
  27. [root@node1 dns_rpm]# ls -hltr
  28. total 1.1M
  29. -rw-r--r-- 1 root root  45K Dec  7 18:04 bind-chroot-9.3.6-4.P1.el5_4.2.i386.rpm
  30. -rw-r--r-- 1 root root 985K Dec  7 18:04 bind-9.3.6-4.P1.el5_4.2.i386.rpm
  31. -rw-r--r-- 1 root root  61K Dec  7 18:04 caching-nameserver-9.3.6-4.P1.el5_4.2.i386.rpm
  32. #下面安装rpm包
  33. [root@node1 dns_rpm]# rpm -Uvh bind-9.3.6-4.P1.el5_4.2.i386.rpm
  34. warning: bind-9.3.6-4.P1.el5_4.2.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
  35. Preparing...                ########################################### [100%]
  36. 1:bind                   ########################################### [100%]
  37. [root@node1 dns_rpm]# rpm -Uvh bind-chroot-9.3.6-4.P1.el5_4.2.i386.rpm
  38. warning: bind-chroot-9.3.6-4.P1.el5_4.2.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
  39. Preparing...                ########################################### [100%]
  40. 1:bind-chroot            ########################################### [100%]
  41. [root@node1 dns_rpm]# rpm -Uvh caching-nameserver-9.3.6-4.P1.el5_4.2.i386.rpm
  42. warning: caching-nameserver-9.3.6-4.P1.el5_4.2.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
  43. Preparing...                ########################################### [100%]
  44. 1:caching-nameserver     ########################################### [100%]
  45. 4、配置DNS
  46. #关于DNS的配置,分为以下几个步骤
  47. #a.安装所需的rpm包
  48. #b.配置named.conf文件
  49. #c.配置zone文件,包括正向和反向zone文件
  50. #d.配置解析文件resolv.conf
  51. #e.启动dns服务
  52. [root@node1 ~]# cd /var/named/chroot/etc/
  53. #使用下面的方式复制两个新的副本并修改,参数-p表示连同权限及属主,属组一同复制。切记不可忽略参数-p
  54. [root@node1 etc]# cp -p named.caching-nameserver.conf   named.conf
  55. [root@node1 etc]# cp -p named.rfc1912.zones   named.zones
  56. #修改named.conf文件,将源文件中的所有localhost以及127.0.0.1修改成any,注意any;前后保留空格
  57. #该文件主要是配置dns监听那些端口以及ip地址并指明相应的名字解析zone文件名named.zones
  58. #下面是修改后的named.conf文件
  59. [root@node1 ~]# cat /var/named/chroot/etc/named.conf
  60. //
  61. // named.caching-nameserver.conf
  62. //
  63. // Provided by Red Hat caching-nameserver package to configure the
  64. // ISC BIND named(8) DNS server as a caching only nameserver
  65. // (as a localhost DNS resolver only).
  66. //
  67. // See /usr/share/doc/bind*/sample/ for example named configuration files.
  68. //
  69. // DO NOT EDIT THIS FILE - use system-config-bind or an editor
  70. // to create named.conf - edits to this file will be lost on
  71. // caching-nameserver package upgrade.
  72. //
  73. options {
  74. listen-on port 53 { any; };
  75. listen-on-v6 port 53 { ::1; };
  76. directory       "/var/named";
  77. dump-file       "/var/named/data/cache_dump.db";
  78. statistics-file "/var/named/data/named_stats.txt";
  79. memstatistics-file "/var/named/data/named_mem_stats.txt";
  80. // Those options should be used carefully because they disable port
  81. // randomization
  82. // query-source    port 53;
  83. // query-source-v6 port 53;
  84. allow-query     { any; };
  85. allow-query-cache { any; };
  86. };
  87. logging {
  88. channel default_debug {
  89. file "data/named.run";
  90. severity dynamic;
  91. };
  92. };
  93. view localhost_resolver {
  94. match-clients      { any; };
  95. match-destinations { any; };
  96. recursion yes;
  97. include "/etc/named.zones";
  98. };
  99. #修改named.zones文件,该文件用于指定zone的搜索范围,包括正向和反向。文件末尾最后的两个zone为新增加的
  100. #注意每一个zone的file用于指向真正的zone文件,后面要用到
  101. # Author : Robinson
  102. # Blog   : http://blog.csdn.net/robinson_0612
  103. #下面是修改后的named.zones文件
  104. [root@node1 ~]# cat /var/named/chroot/etc/named.zones
  105. // named.rfc1912.zones:
  106. //
  107. // Provided by Red Hat caching-nameserver package
  108. //
  109. // ISC BIND named zone configuration for zones recommended by
  110. // RFC 1912 section 4.1 : localhost TLDs and address zones
  111. //
  112. // See /usr/share/doc/bind*/sample/ for example named configuration files.
  113. //
  114. zone "." IN {
  115. type hint;
  116. file "named.ca";
  117. };
  118. zone "localdomain" IN {
  119. type master;
  120. file "localdomain.zone";
  121. allow-update { none; };
  122. };
  123. zone "localhost" IN {
  124. type master;
  125. file "localhost.zone";
  126. allow-update { none; };
  127. };
  128. zone "0.0.127.in-addr.arpa" IN {
  129. type master;
  130. file "named.local";
  131. allow-update { none; };
  132. };
  133. zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
  134. type master;
  135. file "named.ip6.local";
  136. allow-update { none; };
  137. };
  138. zone "255.in-addr.arpa" IN {
  139. type master;
  140. file "named.broadcast";
  141. allow-update { none; };
  142. };
  143. zone "0.in-addr.arpa" IN {
  144. type master;
  145. file "named.zero";
  146. allow-update { none; };
  147. };
  148. #Add new zone added by Robinson
  149. #以下两个zone为新增的,包含正向和反向zone
  150. zone "szdb.com" IN {
  151. type master;
  152. file "node1.szdb.zero";
  153. allow-update { none; };
  154. };
  155. zone "7.168.192.in-addr.arpa" IN {
  156. type master;
  157. file "7.168.192.local";
  158. allow-update { none; };
  159. };
  160. #配置正向和反向搜索数据库解析文件
  161. [root@node1 etc]# pwd
  162. /var/named/chroot/etc
  163. [root@node1 etc]# cd  ../var/named/
  164. #同样使用cp -p 方式复制文件到新的正向和反向文件
  165. [root@node1 named]# cp -p named.zero  node1.szdb.zero
  166. [root@node1 named]# cp -p named.local 7.168.192.local
  167. #下面是修改之后的正向搜索文件,也可以将host文件的其他ip对照编辑到正向搜索文件以实现解析
  168. #如下面的例子将vip的参照关系也添加到解析文件
  169. [root@node1 named]# cat node1.szdb.zero
  170. $TTL    86400
  171. @               IN SOA  node1.szdb.com.      root.szdb.com. (
  172. 42              ; serial (d. adams)
  173. 3H              ; refresh
  174. 15M             ; retry
  175. 1W              ; expiry
  176. 1D )            ; minimum
  177. IN      NS      node1.szdb.com.
  178. scan-cluster1 IN A     192.168.7.91
  179. scan-cluster1 IN A     192.168.7.92
  180. scan-cluster1.szdb.com IN A     192.168.7.91
  181. scan-cluster1.szdb.com IN A     192.168.7.92
  182. node1-vip              IN A     192.168.7.81
  183. node2-vip              IN A     192.168.7.82
  184. node1-vip.szdb.com     IN A     192.168.7.81
  185. node2-vip.szdb.com     IN A     192.168.7.82
  186. #下面是修改之后的反向搜索文件
  187. [root@node1 named]# cat 7.168.192.local
  188. $TTL    86400
  189. @       IN      SOA     node1.szdb.com. root.szdb.com.  (
  190. 1997022700 ; Serial
  191. 28800      ; Refresh
  192. 14400      ; Retry
  193. 3600000    ; Expire
  194. 86400 )    ; Minimum
  195. IN      NS      node1.szdb.com.
  196. 1       IN      PTR     node1.szdb.com.
  197. 91      IN      PTR     scan-cluster1.szdb.com.
  198. 92      IN      PTR     scan-cluster1.szdb.com.
  199. 91      IN      PTR     scan-cluster1.
  200. 92      IN      PTR     scan-cluster1.
  201. 81      IN      PTR     node1-vip.
  202. 82      IN      PTR     node2-vip.
  203. 81      IN      PTR     node1-vip.szdb.com.
  204. 82      IN      PTR     node2-vip.szdb.com.
  205. #在各个节点配置resolv.conf文件
  206. #下面是修改之后的内容
  207. [root@node1 named]# more /etc/resolv.conf
  208. ; generated by /sbin/dhclient-script
  209. #the following item removed by Robinson
  210. #search SSG-140
  211. #nameserver 192.168.7.10
  212. #nameserver 192.168.7.11
  213. #the following item added by Robinson
  214. search szdb.com
  215. nameserver 192.168.7.71
  216. #节点2上的resolv.conf文件
  217. [root@node2 ~]# more /etc/resolv.conf
  218. ; generated by /sbin/dhclient-script
  219. #search SSG-140
  220. #nameserver 192.168.7.10
  221. #nameserver 192.168.7.11
  222. search szdb.com
  223. nameserver 192.168.7.71
  224. #启动dns服务
  225. [root@node1 named]# service named restart
  226. Stopping named: [  OK  ]
  227. Starting named: [  OK  ]
  228. [root@node1 named]# chkconfig named on
  229. #测试dns解析
  230. [root@node1 named]# cd ~
  231. [root@node1 ~]# nslookup 192.168.7.91
  232. Server:         192.168.7.71
  233. Address:        192.168.7.71#53
  234. 91.7.168.192.in-addr.arpa       name = scan-cluster1.
  235. 91.7.168.192.in-addr.arpa       name = scan-cluster1.szdb.com.
  236. [root@node1 ~]# nslookup 192.168.7.92
  237. Server:         192.168.7.71
  238. Address:        192.168.7.71#53
  239. 92.7.168.192.in-addr.arpa       name = scan-cluster1.szdb.com.
  240. 92.7.168.192.in-addr.arpa       name = scan-cluster1.
  241. [root@node1 ~]# nslookup scan-cluster1
  242. Server:         192.168.7.71
  243. Address:        192.168.7.71#53
  244. Name:   scan-cluster1.szdb.com
  245. Address: 192.168.7.92
  246. Name:   scan-cluster1.szdb.com
  247. Address: 192.168.7.91
  248. [root@node1 ~]# nslookup scan-cluster1.szdb.com.
  249. Server:         192.168.7.71
  250. Address:        192.168.7.71#53
  251. Name:   scan-cluster1.szdb.com
  252. Address: 192.168.7.91
  253. Name:   scan-cluster1.szdb.com
  254. Address: 192.168.7.92
  255. 转:http://blog.csdn.net/leshami/article/details/8291685#comments

安装Oracle 11g RAC R2 之Linux DNS 配置的更多相关文章

  1. 11g RAC R2 之Linux DNS 配置

    在动手配置前,最好先了解下DNS的理论,以免犯不必要的错误.这都是被坑后的觉悟 -_-!!! Oracle 11g RAC 集群中引入了SCAN(SingleClientAccessName)的概念, ...

  2. oracle 11g rac R2 for linux change(public,vip)IP ,hostname (oracle 11g rac R2 修改公有,虚拟,私有IP,网卡)

    结构如下: 说明: 节点IP,主机名的修改步骤来自ORACLE support文档: 如何修改集群的公网信息(包括 VIP) (文档 ID 1674442.1) 实验环境情况如下: 实验 节点名称 数 ...

  3. linux安装oracle 11g rac

    安装oracle 11gR2 RAC 一.网络规划及安装虚拟主机 主机名 主机版本 Ip rac1.localdomain Redhat 6.5 RAC节点1 192.168.100.11 rac2. ...

  4. Oracle安装部署之linux(redhat/centos)快速安装oracle 11g rac

    安装oracle 11gR2 RAC 一.网络规划及安装虚拟主机 主机名 主机版本 Ip rac1.localdomain Redhat 6.5 RAC节点1 192.168.100.11 rac2. ...

  5. centos7.6静默安装oracle 11G RAC

    环境介绍, esxi6.0 ,VMware vSphere Client6.0 linux 版本Centos7.6(最小化安装) Oracle 版本 oracle 11g 11.2.0.4 虚拟化环境 ...

  6. RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境

    实验环境准备虚拟机:VMware® Workstation 14 Pro操作系统:Red Hat Enterprise Linux 6.6 x86_64rhel-server-6.6-x86_64-d ...

  7. Oracle Linux 6.3下安装Oracle 11g R2(11.2.0.3)

    本文主要描写叙述了在Oracle Linux 6.3下安装Oracle 11gR2(11.2.0.3).从Oracle 11g開始,Oracle官方站点不再提供其Patch的下载链接,须要使用Meat ...

  8. Redhat Linux 下安装Oracle 11g R2

    能够下载:http://download.csdn.net/detail/ykh554541184/8086647文档方便查阅 官方文档:http://docs.oracle.com/cd/E1188 ...

  9. 【Oracle 集群】Oracle 11G RAC教程之集群安装(七)

    Oracle 11G RAC集群安装(七) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总. ...

随机推荐

  1. Java-马士兵设计模式学习笔记-观察者模式-OOD 封装Listener

    一.概述 childe类中的是关联监听者dad的,若要再增加监听者,会很不方便,且要修改代码.好的方法是封装监听者类,用addListener()方法动态添加监听者 二.代码 1.Test.java ...

  2. 《jQuery风暴》第2章 必须知道的JavaScript知识

    第2章 必须知道的JavaScript知识 JavaScript是jQuery应用的基础,掌握JavaScript这门语言是使用jQuery的基础条件.本章不会全面细致的讲解JavaScript的全部 ...

  3. qt练习10 涂鸦板源代码

    源代码下载: http://files.cnblogs.com/hnrainll/doodle.zip http://www.cnblogs.com/hnrainll/archive/2011/05/ ...

  4. WPF之快速实现拖拽功能

    场景:工具栏上有很多图标(一个图标代表一种控件),可以左键按下图标,然后拖拽到设计区域创建一个个的控件. 实现:1.给工具栏上的图标添加MouseLeftDown和MouseMove事件,前者事件是为 ...

  5. Spring 事务配置的几种方式

    参考:http://www.blogjava.net/robbie/archive/2009/04/05/264003.html http://www.cnblogs.com/appleat/arch ...

  6. Difference between Pragma and Cache-control headers?

    Pragma is the HTTP/1.0 implementation and cache-control is the HTTP/1.1 implementation of the same c ...

  7. 干货:yii日志功能详解

    转载请注明来自souldak,微博:@evagle 一.基本日志功能 详细的介绍查看官网的document:http://www.yiiframework.com/doc/guide/1.1/en/t ...

  8. 《Linux/Unix系统编程手册》读书笔记 目录

    <Linux/Unix系统编程手册>读书笔记1  (创建于4月3日,最后更新4月7日) <Linux/Unix系统编程手册>读书笔记2  (创建于4月9日,最后更新4月10日) ...

  9. .htaccess的应用

    今天下班后,同事问到这个东西的用法.我以前也没接触过,特地搜索了一下,现在保存方便以后使用. 1.首先判断服务器类型,服务器是否支持. 2.写法是否有错误. 3.需要的功能是否在.htaccess是否 ...

  10. 二维码(2)二维码登录原理及Android客户端示例

    1,原理 服务器: 数据库: 建立一个2维码登录的数据表,产生一个登录页时,插入一条记录X,X含将要登录的用户名字段(初始为空),2维码中的数据字段(唯一) 登录页面: 在产生的2维码中包含关键数据Y ...