当前位置:网站首页 > 数据科学与大数据 > 正文

sundb数据库项(数据库sp_helpdb)



客户端要连接到数据库,除了使用某一个具体的“服务器 IP 地址和端口号”,也可以使用数据库服务名。服务名是一个数据库系统中所有对外服务的实例的“IP 地址和端口号”的集合的名称。

连接 DMDSC 集群,建议客户端使用数据库服务名,以实现故障自动切换、只连集群的主控节点或者只连集群的第一个节点等功能。

连接服务名可以在 DM 提供的 JDBC、DPI 接口中使用。可以通过编辑 dm_svc.conf 文件配置连接服务名。

dm_svc.conf 是一个客户端配置文件,它包含了 DM 各接口和客户端工具所需要配置的一些参数。它必须和接口/客户端工具位于同一台机器上才能生效。

初始 dm_svc.conf 文件在 DM 安装时自动生成。不同平台的生成目录有所不同。

  1. 32 位的 DM 安装在 Win32 操作平台下,此文件位于 %SystemRoot%system32 目录;
  2. 64 位的 DM 安装在 Win64 操作平台下,此文件位于 %SystemRoot%system32 目录;
  3. 32 位的 DM 安装在 Win64 操作平台下,此文件位于 %SystemRoot%SysWOW64 目录;
  4. 在 Linux 平台下,此文件位于/etc 目录。

可以通过设置操作系统环境变量 DM_SVC_PATH 来修改 dm_svc.conf 文件路径。

dm_svc.conf 文件包含很多参数,详细请参考《DM8 系统管理员手册》。本节只介绍 DMDSC 相关的常用配置项:

● 服务名

用于连接的服务名,用户通过连接服务名访问数据库。

服务名格式:

 
  

IP 为数据库所在的 IP 地址,如果是 IPv6 地址,为了方便区分端口,需要用[]封闭 IP 地址。PORT 为数据库使用的 TCP 连接端口,可选配置,不配置则使用默认的端口。

● SWITCH_TIMES

检测到数据库实例故障时,接口在服务器之间切换的次数;超过设置次数没有连接到有效数据库时,断开连接并报错。有效值范围 1~,缺省值为 1。

● SWITCH_INTERVAL

表示在服务器之间切换的时间间隔,单位为毫秒,有效值范围 1~,缺省值为 200。

● LOGIN_DSC_CTRL

服务名连接数据库时是否只选择 DMDSC 控制节点的库。0:否;1:是。缺省值为 0。

● EP_SELECTOR

连接数据库时采用何种模型建立连接。不同的接口取值不同。

在 JDBC 和 DPI 中,该配置项的取值为大于或等于 0 的整数。0:依次选取列表中的不同节点建立连接,使得所有连接均匀地分布在各个节点上;其余大于 0 的整数表示选择列表中第几个节点建立连接,只有当前节点无法建立连接时才会选择下一个节点进行连接,若配置的值超过服务名列表的节点数,则连接第 N 个节点。其中,N=EP_SELECTOR % 服务名列表节点数。

在.NET PROVIDER、NODE.JS、GO 中,该配置项的取值为 0 或 1。0:依次选取列表中的不同节点建立连接,使得所有连接均匀地分布在各个节点上;1:选择列表中最前面的节点建立连接,只有当前节点无法建立连接时才会选择下一个节点进行连接。

缺省值为 0。

● AUTO_RECONNECT

连接发生异常或一些特殊场景下连接处理策略。0:关闭连接;1:当连接发生异常时自动切换到其他库,无论切换成功还是失败都会抛一个 SQLException,用于通知上层应用进行事务执行失败时的相关处理;2:配合 EP_SELECTOR>=1 使用,如果服务名列表前面的节点恢复了,将当前连接切换到前面的节点上;4:保持各节点会话动态均衡,通过后台线程检测节点及会话数变化,并切换连接使之保持均衡。

也可以将 AUTO_RECONNECT 置为上述几个值的组合值,表示同时进行多项配置,如置为 3 表示同时配置 1 和 2。缺省值为 0。

● CHECK_FREQ

JDBC 专用。服务名连接数据库时,循环检测连接是否需要重置的时间间隔。即每间隔设定时间检测连接对象是否发生改变,若连接对象发生改变,JDBC 连接会自动重置到新对象。单位 MS,取值范围 0~。缺省值为 。

在集群场景中,一个完整的 dm_svc.conf 包含两大模块:全局配置区和服务配置区。全局配置区在前,可配置 dm_svc.conf 中所有的配置项;服务配置区在后,以“[服务名]”开头,可配置 dm_svc.conf 中除了服务名和 WALLET_LOCATION 外的所有配置项。服务配置区中的配置优先级高于全局配置区。未设置的参数一律使用默认值。

例如:

 
  

需要说明的是,如果对 dm_svc.conf 的配置项进行了修改,需要重启客户端工具,修改的配置才能生效。另外,如果 dm_svc.conf 配置文件中包含中文,则必须保证该配置文件的编码与客户端编码一致。

当用户连接到 DM 数据共享集群连接到集群中的一个实例,用户的所有增删改查操作都是由该实例完成的。但是如果该实例出现故障,那么用户连接会被切换到其他正常实例。而这种切换对用户是透明的,用户的增删改查继续返回正确结果,感觉不到异常。这种功能就是故障自动切换。

实现故障自动切换的前提条件是在使用 DM 数据共享集群的时候,必须配置连接服务名。

本节以 12.1 基于 DMASM 的 DMDSC 成功搭建的数据共享集群体验一下故障自动切换功能。故障自动切换的步骤:

  1. 配置一个名为 dmdsc_svc 的连接服务名,使用 dmdsc_svc 连接 DMDSC 集群中的数据库,接口会随机选择一个 IP 进行连接,如果连接不成功或者服务器状态不正确,则顺序获取下一个 IP 进行连接,直至连接成功或者遍历了所有 IP。

本例子使用 DIsql 作为客户端,因此 dm_svc.conf 位于 DIsql 所在的机器。

dm_svc.conf 配置如下:

 
  
  1. 连接到 DMDSC。
 
  

3.确认当前用户已经连接到的节点实例。

 
  

用户当前连接到节点 0 上 DSC0 实例。不要退出这个会话(假定为会话 1),第 4 步还是在这个会话中执行。

4.关闭 DSC0 实例,或者将节点 0 所在的这台主机关机。

5.在会话 1 中再次执行这条语句,服务器会返回提示正在切换当前连接。

 
  

6.等待几秒后,切换成功。此时,在会话 1 中再次执行这条语句,可执行成功。可见,会话也已切换到 DSC1 实例,实现了故障自动切换。

 
  

本节以 12.1 基于 DMASM 的 DMDSC 成功搭建的数据共享集群介绍。

LOGIN_DSC_CTRL=1 表示使用服务名连接数据库时只选择 DMDSC 主控节点(CONTROL NODE)的库。dm_svc.conf 配置如下:

 
  

此时退出 DSC1,系统中只剩 DSC2。DSC2 为主控节点。查询如下:

 
  

通过服务名连接到 DMDSC。

 
  

发现当前用户已经连接到的控制节点实例。

 
  

再次启动 DSC1 之后,DSC1 变成控制节点。发现 DIsql 又自动连接上了 DSC1。DIsql 始终只连接主控节点。

 
  

此功能 DIsql 工具暂不支持。

本节以 12.1 基于 DMASM 的 DMDSC 成功搭建的数据共享集群介绍。

EP_SELECTOR=N(N>=1)和 AUTO_RECONNECT=2 表示使用服务名连接数据库时会选择“IP 地址和端口号”集合列表中第 N 个节点建立连接,只有当前节点无法建立连接时才会选择下一个节点进行连接,如果第 N 个节点恢复了,当前连接将自动切换到第 N 个节点上。

例 以 EP_SELECTOR=1 为例,dm_svc.conf 配置如下:

 
  

使用 MANAGER 通过服务名连接到 DMDSC。10.0.2.102:5237 为 DSC1,10.0.2.102:5236 为 DSC0。

图 13.1 <a href='/tag/171'>登录</a>界面.png

图13.1 登录界面

使用此功能,MANAGER 工具需配置自动提交功能。窗口-选项-查询分析器:勾选自动提交。

在 MANAGER 界面中执行如下语句,会发现当前用户连接的是第一个节点。

 
  

当关闭 DSC1 之后,MANAGER 会自动连接到 DSC0。

 
  

再次启动 DSC1 之后,MANAGER 又自动连回 DSC1。

 
  

因为数据库故障切换过程和 MANAGER 工具自动重置连接(CHECK_FREQ)均需要一定的时间,因此,只有等待两者都顺利完成,才能看到正确的结果。

到此这篇sundb数据库项(数据库sp_helpdb)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • orecal数据库招标(oralcal数据库)2025-07-13 12:09:10
  • ip报文格式(ip报文格式中的总长度包含头部长度和数据区长度)2025-07-13 12:09:10
  • 如何查看数据库端口(如何查看数据库端口oracle)2025-07-13 12:09:10
  • 数据库入门应该学什么(数据库入门应该学什么内容)2025-07-13 12:09:10
  • 红米手机 数据迁移(红米手机数据迁移到苹果手机)2025-07-13 12:09:10
  • 数据库课程设计案例(数据库课程设计案例分析)2025-07-13 12:09:10
  • 大数据培训哪些课程(大数据培训有哪些课程)2025-07-13 12:09:10
  • 大数据算法(大数据算法网课超星尔雅章节答案)2025-07-13 12:09:10
  • 数据库增删改查功能称为(数据库增删改查属于什么功能)2025-07-13 12:09:10
  • 3DTiles数据转shp(3dtiles数据下载)2025-07-13 12:09:10
  • 全屏图片