oracle 19c rac asm磁盘绑定的方法

2023-11-05

  1. multipath  通过scsi_id
  2. udev  通过scsi_id
  3. oracle  AFD  直接绑定后在/dev/oracleafd/disks/下面生成设备文件 ./asmcmd afd_label OCR1 /dev/sda --init

虚拟机情况下读不出来scsi id, 需要手工配置一下scsi id 扫描出来的

[root@rac1 etc]# /lib/udev/scsi_id -g -u /dev/sdb
0QEMU_QEMU_HARDDISK_drive-scsi0-0-0-6
[root@rac1 etc]# cat /etc/multipath/wwids 
# Multipath wwids, Version : 1.0
# NOTE: This file is automatically maintained by multipath and multipathd.
# You should not need to edit this file in normal circumstances.
#
# Valid WWIDs:
/0QEMU_QEMU_HARDDISK_drive-scsi0-0-0-6/
/0QEMU_QEMU_HARDDISK_drive-scsi0-0-0-5/
/0QEMU_QEMU_HARDDISK_drive-scsi0-0-0-4/
/0QEMU_QEMU_HARDDISK_drive-scsi0-0-0-3/
/0QEMU_QEMU_HARDDISK_drive-scsi0-0-0-2/

再重启服务就好了。

centos8.2/openanolis8.2/uos 1050a 安装grid互信死活过不去的解决办法

mv /usr/bin/scp /usr/bin/scp-o
cat >  /usr/bin/scp <<EOF
#!/bin/bash
/usr/bin/scp-o -T $*
EOF
chmod +x /usr/bin/scp

真的是奇葩问题啊

网络至少2块网卡 心跳和对外服务各一块

hosts文件至少配置每个机器的对外服务网卡IP,心跳网卡IP ,VIP,scanIP 

SCAN概念

先介绍一下什么叫SCAN,SCAN(Single Client Access Name)是Oracle从11g R2开始推出的,客户端可以通过SCAN特性负载均衡地连接到RAC数据库。SCAN提供一个域名来访问RAC,域名可以解析1个到3个(注意,最多3个)SCAN IP,我们可以通过DNS或者GNS来解析实现。其中DNS大家都很熟悉,这里不多说。GNS(Grid Naming Service)则是Oracle 11g R2的新功能,可以通过DHCP服务为节点和SCAN分配VIP和SCAN IP。另外还有个优点是,对于新加入集群的节点,它会自动分配VIP地址,更新集群资源,客户端依然通过SCAN特性负载均衡地连接到新增集群节点上。DNS和GNS配置与解析相关内容在下面还有说明。
除了DNS和GNS解析方法外,SCAN也可以使用hosts文件来解析,但用过的人都知道,此方法不仅在安装RAC的时候产生问题,后期使用也是存在问题的,比如SCAN域名只能定义一个SCAN IP。所以这种方法也是Oracle不推荐使用的。但尽管如此,很多生产上依然这样使用,也就是废弃了11g的新特性SCAN,而是依然采用VIP连接方式。

public ip&vip&scanip&private ip

Oracle RAC中每个节点都有一个虚拟IP,简称VIP, 与公网PUBLIC  IP在同一个网段。vip 附属在public网口接口。

public网卡有二个IP地址:public ip是固定的,vip是浮动的。

RAC中的Private私有IP用于心跳同步,这个对于用户层面,可以直接忽略,它和public ip不属于同一个接口。

在11gR2中,SCAN  IP是作为一个新增IP出现的, scan ip其实是oracle在客户端与数据库之间,新加的一个连接层,当有客户端访问时,连接到 SCAN IP LISTENER, 而SCAN IP LISTENER接收到连接请求时,会根据 LBA 算法将该客户端的连接请求,转发给对应的instance上的VIP LISTENER,从而完成了整个客户端与服务器的连接过程。简化如下:

 client -> scan listener -> local listener -> local instance 

也可以把scan理解为一个虚拟主机名,它对应的是整个RAC集群。客户端主机只需通过这个scan name即可访问数据库集群的任意节点。当然访问的节点是随机的,oracle强烈建议通过DNS Server的round robin模式配置解析SCAN,实现负载均衡(即轮换连接SCAN对应的IP地址)。这有点类似通过vip和listener loadbalance配置实现负载均衡的原理。

客户端TNSNAMES.ORA配置

vip:19.16.8.166、19.16.8.167

scanip:19.16.8.154

---vip配置
gdsx_pro =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 19.16.8.166)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 19.16.8.167)(PORT = 1521))
      (LOAD_BALANCE = yes)
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = gdwsbs)
    )
  )

---scanip配置
gdsx_scan_pro =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 19.16.8.154)(PORT = 1521))
    (CONNECT_DATA =(SERVER = DEDICATED)
      (SERVICE_NAME = gdwsbs))) 

---jdbc
jdbc:oracle:thin:@19.16.8.154:1521/orcl而非jdbc:oracle:thin:@19.16.8.154:1521:orcl

tnsping命令

tnsping 19.16.8.154:1521/gdwsbs

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

oracle 19c rac asm磁盘绑定的方法 的相关文章

  • Hibernate注解放置问题

    我有一个我认为很简单的问题 我见过两种方式的例子 问题是 为什么我不能将注释放在字段上 让我举一个例子 Entity Table name widget public class Widget private Integer id Id G
  • 在文本文件中写入多行(java)

    下面的代码是运行命令cmd并使用命令行的输出生成一个文本文件 下面的代码在 Eclipse 的输出窗口中显示了正确的信息 但在文本文件中只打印了最后一行 谁能帮我这个 import java io public class TextFile
  • SAML 服务提供商 Spring Security

    当使用预先配置的服务提供者元数据时 在 Spring Security 中 是否应该有 2 个用于扩展元数据委托的 bean 定义 一份用于 IDP 元数据 一份用于 SP 元数据
  • Java:如何从转义的 URL 获取文件?

    我收到了一个定位本地文件的 URL 事实上我收到的 URL 不在我的控制范围内 URL 按照 RFC2396 中的定义进行有效转义 如何将其转换为 Java File 对象 有趣的是 URL getFile 方法返回一个字符串 而不是文件
  • 如何使用 Java 处理 Selenium WebDriver 中的新窗口?

    这是我的代码 driver findElement By id ImageButton5 click Thread sleep 3000 String winHandleBefore driver getWindowHandle drive
  • JAVA - Xuggler - 组合 MP3 音频文件和 MP4 电影时播放视频

    使用 JAVA 和 Xuggler 以下代码组合 MP3 音频文件和 MP4 电影文件并输出组合的 mp4 文件 我希望在合并音频和视频文件时应自动播放输出视频文件 String inputVideoFilePath in mp4 Stri
  • 当从服务类中调用时,Spring @Transactional 不适用于带注释的方法

    在下面的代码中 当方法内部 是从内部调用的方法外部 应该在交易范围内 但事实并非如此 但当方法内部 直接从调用我的控制器class 它受到事务的约束 有什么解释吗 这是控制器类 Controller public class MyContr
  • 在 S3 中迭代对象时出现“ConnectionPoolTimeoutException”

    我已经使用 aws java API 一段时间了 没有遇到太多问题 目前我使用的是库 1 5 2 版本 当我使用以下代码迭代文件夹内的对象时 AmazonS3 s3 new AmazonS3Client new PropertiesCred
  • 画透明圆,外面填充

    我有一个地图视图 我想在其上画一个圆圈以聚焦于给定区域 但我希望圆圈倒转 也就是说 圆的内部不是被填充 而是透明的 其他所有部分都被填充 请参阅这张图片了解我的意思 http i imgur com zxIMZ png 上半部分显示了我可以
  • 在 Netbeans 8 上配置 JBoss EAP 的问题

    我已经下载了 JBoss EAP 7 并正在 Netbeans 8 上配置它 我已经到达向导 实例属性 其中要求从选择框中选择 域 当我打开选择框时 它是空的 没有什么可以选择的 因此 完成 按钮也处于非活动状态 这使得无法完成配置 我通过
  • 将 SignedHash 插入 PDF 中以进行外部签名过程 -workingSample

    遵循电子书第 4 3 3 节 PDF 文档的数字签名 https jira nuxeo com secure attachment 49931 digitalsignatures20130304 pdf 我正在尝试创建一个工作示例 其中 客
  • 普罗米修斯指标 - 未找到

    我有 Spring Boot 应用程序 并且正在使用 vertx 我想监控服务和 jvm 为此我选择了 Prometheus 这是我的监控配置类 Configuration public class MonitoringConfig Bea
  • 有没有一种快速方法可以从 Jar/war 中删除文件,而无需提取 jar 并重新创建它?

    所以我需要从 jar war 文件中删除一个文件 我希望有类似 jar d myjar jar file I donot need txt 的内容 但现在我能看到从 Linux 命令行执行此操作的唯一方法 不使用 WinRAR Winzip
  • 如何知道抛出了哪个异常

    我正在对我们的代码库进行审查 有很多这样的陈述 try doSomething catch Exception e 但我想要一种方法来知道 doSomething 抛出了哪个异常 在 doSomething 的实现中没有 throw 语句
  • 在 Spring 中重构这个的最佳方法?

    private final ExecutorService executorParsers Executors newFixedThreadPool 10 public void parse List
  • java.lang.NumberFormatException: Invalid int: "3546504756",这个错误是什么意思?

    我正在创建一个 Android 应用程序 并且正在从文本文件中读取一些坐标 我在用着Integer parseInt xCoordinateStringFromFile 将 X 坐标转换为整数 Y 坐标的转换方法相同 当我运行该应用程序时
  • 游戏内的java.awt.Robot?

    我正在尝试使用下面的代码来模拟击键 当我打开记事本时 它工作正常 但当我打开我想使用它的游戏时 它没有执行任何操作 所以按键似乎不起作用 我尝试模拟鼠标移动和点击 这些动作确实有效 有谁知道如何解决这个问题 我发现这个问题 如何在游戏中使用
  • HQL Hibernate 内连接

    我怎样才能在 Hibernate 中编写这个 SQL 查询 我想使用 Hibernate 来创建查询 而不是创建数据库 SELECT FROM Employee e INNER JOIN Team t ON e Id team t Id t
  • Java中的Object类是什么?

    什么是或什么类型private Object obj Object http download oracle com javase 6 docs api java lang Object html是Java继承层次结构中每个类的最终祖先 从
  • ServletContainer 类未找到异常

    我无法再编译我的球衣项目 并且出现以下异常 GRAVE Servlet Project API threw load exception java lang ClassNotFoundException com sun jersey spi

随机推荐

  • Vuex组件访问State中数据的两种方式

    创建store数据源 提供唯一公共数据 const store new Vuex store state num 0 第一种方式 this store state 全局数据名称 第二种方式 在需要使用的组件里 从Vuex中按需导入mapSt
  • 【第16篇】Vision Transformer

    论文连接 https arxiv org abs 2010 11929 GitHub https github com google research vision transformer 摘要 虽然 Transformer 架构已成为自然
  • MyBatis 动态SQL技术

    Mybatis框架的动态SQL技术是一种根据特定条件动态拼装SQL语句的功能 sql 标签
  • 【Python整蛊合集】多份整蛊代码,发给朋友之后我.....(友尽系列推荐)

    前言 作者 程序员梨子 文章简介 本篇文章主要是写了自动刷金币脚本啦 文章源码获取 为了感谢每一个关注我的小可爱 每篇文章的项目源码都是无偿分 享滴 点这里蓝色这行字体自取 需要什么源码记得说标题名字哈 私信我也可 欢迎小伙伴们 点赞 收藏
  • Mybatis Plus基础04 delete删除操作

    学习目标 mybatis plus 的删除操作 学习内容 delete使用 学习产出 1 deleteById Test void deleteTest 返回一个int类型 操作成功的数量 0代表未搜索到未执行成功 System out p
  • iperf—流量测试

    iperf是另外一款用于流量测试的软件 主要运行于Windows系统和安卓系统的手机 PAD IOS系统下载需要收费 一个工作在Server模式 另外一个工作在Client模式 输入Server的测试ip地址就可以测试从Client到Ser
  • Window下CodeStriker Server的搭建

    Windows下Codestriker Server的搭建分为以下几个步骤 1 安装Perl解析器 这里以ActivePerl为例 安装没有什么难度 主要是用安装以后GUI的PPM去下载相关的PM组件 2 安装数据库并为codestrike
  • java 剪刀,石头,布,游戏

    局数没有使用Tom类的属性调用 如果有会的 请指教一下 import java util Random import java util Scanner public class Homework014 编写一个main方法 public
  • GraphEdit使用

    GraphEdit 是一个用于建立和测试Filter graph 的可视化工具 在DirectX SDK 中附带一个可执行程序版本 在SDK目录中的Bin DXUtils graphedt exe 你可以快速测试你建立的Filter gra
  • 因果论(五)——Structural Causal Model(SCM 结构因果模型、函数模型和图模型)

    一 核心思想 SCM的核心思想是因果图 因果图之前已经介绍过 SCM和RCM是等价的 SCM的关键在于图模型 来源于贝叶斯网络 将Bayes网络加上外部干预 用来定义外部干预的因果作用和描述多个变量之间的因果关系 利用因果网络不仅能定量评价
  • 自动化测试框架实战详解

    B站最通俗易懂 Python接口自动化测试从入门到精通 超详细的进阶教程 看完这套视频就够了 前言 之前文章跟大家分享了一下自己在接口自动化测试中进行测试准备的一些相关知识点 接下来本篇文章详细分享一下接口自动化框架设计的思路总结 希望能对
  • 使用POI同时对Excel文件进行读和写操作时避免Invalid header signatu

    这学期学到了数据库概论 课程设计需要做一个DBMS 图方便想把数据什么的存到xls文件中 在使用poi对excel文件同时进行读和写操作时 如果这样写 public void test try File file new File user
  • linux sed命令,如何替换换行符“\n”

    linux sed命令如何替换换行符n 实现方法 第一种方法使用test跳转命令实现替换换行符 branch和test区别 第二种方法使用branch跳转命令实现替换换行符 linux sed命令 如何替换换行符 n 在一次sed使用中 执
  • 关于GD32E230进入睡眠后无法烧录程序解决方法

    软件安装 1 到GD32官网兆易创新 gd32mcu com 找到下图文件下载并安装 2 安装软件 傻瓜式安装 就不多讲了 直接一步到底 3 进入主题 打开刚刚下载好的软件 开发板设置 1 连接开发板上的串口 2 进入BOOT0模式 接3
  • linxu下c/c++遍历文件夹获取文件

    最近工作需要 需要遍历文件夹下的文件 但是我发现遇到两个非常有意思的问题 记录一下 测试的平台为 PC linux Tina linux Linux version 5 15 0 41 generic buildd lcy02 amd64
  • JDK JRE JVM之间的关系

    文章目录 1 从定义的角度解释JDK JRE JVM 2 详细介绍JDK 3 详细介绍JRE 4 详细介绍JVM 1 JVM内部区域划分 5 如何运行一个java程序 本篇文章仅仅是个人片面观点 可能有错误或者表述不清的地方 1 从定义的角
  • Flink从入门到放弃(九)-万字讲解CDC设计(1)

    一 准备工作 在开始研究Flink CDC原理之前 本篇先以CDC1 0版本介绍 后续会延伸介绍2 0的功能 需要做以下几个工作 本篇以Flink1 12环境开始着手 打开Flink官网 查看Connector模块介绍 打开Github 下
  • Unicode与JavaScript详解

    上个月 我做了一次分享 详细介绍了Unicode字符集 以及JavaScript语言对它的支持 下面就是这次分享的讲稿 一 Unicode是什么 Unicode源于一个很简单的想法 将全世界所有的字符包含在一个集合里 计算机只要支持这一个字
  • 水箱建模最小二乘法_Comsol Multiphysics for Mac(建模仿真软件)

    COMSOL Multiphysics 是一款全球通用的基于高级数值方法和模拟物理场问题的通用软件 拥有 网格划分 研究和优化 求解器 可视化和后处理 仿真 App等相关功能 轻松实现各个环节的流畅进行 它能够解释耦合或多物理现象 附加产品
  • oracle 19c rac asm磁盘绑定的方法

    multipath 通过scsi id udev 通过scsi id oracle AFD 直接绑定后在 dev oracleafd disks 下面生成设备文件 asmcmd afd label OCR1 dev sda init 虚拟机