如何在mycat中配置datanode和datahost

分类:编程技术 时间:2024-02-20 15:47 浏览:0 评论:0
0
本文主要介绍如何在mycat中配置datanode和datahost。有一定的参考价值。有兴趣的朋友可以参考一下。希望您读完这篇文章后能有所收获。让小编带你来了解一下吧。

1. dataNode标签
           
                                               database="db1" />
                                                                                                                                                                         数据碎片。数据节点标签是一个独立的数据分片。
示例表达的意思是:在db1数据库实例上使用db1物理数据库,形成数据分片。最后,我们使用名称 dn1 来标识这个分片。

dataNode标签的相关属性:
-------------------------------------------- --
|属性名称|价值|数量限制|
|----------------------------|
|名称 |字符串| (1) |
|----------------------------|
|dataHost |字符串| (1) |
|----------------------------|
|数据库|字符串 |(1) |
--------------------------------
6.5.1 name属性
定义数据节点的名称。该名称必须是唯一的。我们需要将此名称应用到表标签上,以建立表和分片之间的对应关系。
6.5.2 dataHost属性
该属性用于定义分片属于哪个数据库实例。属性值是指 datahost 标签上定义的 name 属性。
6.5.3 数据库属性
该属性用于定义分片属性的具体数据库实例上的具体库,因为定义分片有两个维度,即:实例+具体库。因为每个页面创建的表和表结构都是一样的。因此,通过这样做,您可以轻松地水平分割表格。


6.6 dataHost标签
作为schema.xml中的最后一个标签,该标签也作为mycat逻辑库中最底层的标签存在,直接定义了具体的数据库实例。 、读写分离配置和心跳语句。现在让我们解析这个标签。
writeType = "0" dbtype = "mysql" dbdriver = "native" switchtype = "1" SlaveThreshold =“100”>
选择用户()
“db1:3306&quotuser =“root”密码=“zdsoft”>
3306“user =“root”密码=“xxx”/>-->

                                                                                                        root"-->
                                                                                                                                password="123456"/> -->
< br/>

dataHost标签的相关属性:
---------- ------------------ -----
|属性名称|值|数量限制|
|------------------------------------------------
|名称|字符串| (1) |
|----------------------------------
|maxCon |整数 | (1) |
|----------------------------------
|minCon |整数 | (1) |
|----------------------------------
|余额|整数 | (1) |
| ----------------------------------
|writeType |整数 | (1) |
|- ----------------------------------
|dbType |字符串| (1) |
|-- --------------------------------
|dbDriver |字符串| (1) |
---- ----------------------------------------
6.6.1 名称属性< br/>唯一标识datahost标签,供上层标签使用。
6.6.2 maxCon属性
指定每个读写实例连接池的最大连接数。换句话说,标签内嵌套的writehost和readhost标签将使用该属性来实例化连接池中的最大连接数。
6.6.3 minCon属性
指定每次读写的最小连接数te实例连接池并初始化连接池的大小。
6.6.4balance属性
负载均衡类型,目前有3个值:
1. Balance="0",不启用读写分离机制,所有读操作都发送到当前可用的writehost。
2. Balance="1",所有readhosts和standby wtirehosts参与select语句的负载均衡。简单来说,当双主双从模式(M1->S1、M2->S2,且M1和M2互为主备)时,正常情况下,M2、S1、S2都参与负载均衡选择语句。
3. Balance="2",所以读操作随机分布在writehost和readhost上。
4. Balance=“3”,所有读请求随机分配到writehost对应的readhost上执行。 writehost不承担读压力。请注意,balance=3仅在1.4及更高版本中可用,在1.3中不可用。
6.6.5写入teType属性
负载均衡类型,目前有3个值:
1. writeType=“0”,大多数写操作都会发送到第一个配置的写主机。第一个主机挂起并切换到仍处于活动状态的第二个写入主机。重新启动后,以切换后的为准。该开关记录在配置文件:dnindex.properties
2. writeType=“1”,所有写操作都随机发送到配置的wtirehost。 1.5之后将被放弃,不推荐。
switchtype属性


6.6.6 dbType属性
指定后端连接的数据库类型。目前支持二进制mysql协议,还有使用jdbc连接的其他数据库。 。例如:mongodb、oracle、spark等。
6.6.7 dbDriver属性
指定用于连接后端数据库的驱动程序。目前,可选值为native和jdbc。如果使用native,因为这个值执行二进制mysql protocol,可以使用mysql和maridb。其他类型的数据库需要jdbc驱动支持。
如果使用jdbc,需要将符合jdbc4标准的驱动jar包放置在mycat\lib目录下,并检测该驱动jar包包含以下目录结构的文件:META-INF\services \java.sql.驱动程序。在该文件中写入具体的Driver类名,例如:com.mysql.jdbc.Driver。
6.6.8 switchType属性
- -1表示不自动切换
- 1 默认值,自动切换
- 2 根据mysql主从状态判断是否切换同步
心跳查询为show slave status
3 MySQL galary集群的切换机制(适合集群)(1.4.1)
心跳查询为show status like 'wsrep%'。
6.6 .9 tempReadHostAvailable属性
如果配置了该属性,则writehost下的readhost仍然可用,默认为0 configurab乐 (0, 1)。
6.7 心跳标签
该标签指定用于与后端数据库进行心跳检查的语句。例如MYSQL可以使用select user(),Oracle可以使用select 1 from Dual等。
这个标签还有一个connectionInitSql属性。主要是在使用Oracle数据库时,需要执行的初始化SQL语句放置在这里。例如:alter session set nls_date_format='yyyy-mm-dd hh34:mi:ss'
1.4 主从切换语句必须为:show Slave status
6.7.1 writeHost label, readHost label< br/>这两个标签都指定了后端数据库的相关配置到mycat,用于实例化后端连接池。唯一的区别是 writehost 指定写入实例,readhost 指定读取实例。这些读写实例的组合是为了满足系统要求。
一个数据主机内可以定义多个写入主机和读取主机。但是如果后台数据库指定的 writehost 宕机后,所有与该 writehost 绑定的 readhost 将不可用。另一方面,由于writehost宕机了,系统会自动检测到它并切换到备份writehost。
这两个标签的属性是相同的,这里一起介绍。
------------------------------------------------
|属性名称|价值|数量限制|
-------- ----------------------------------------
|主机|字符串| (1) |
----- ----------------------------------
|网址|字符串| (1) |
--- --------------------------------
|密码 |字符串| (1) |
- ----------------------------------
|用户 |字符串| (1) |
------------------------------------------------
|重量 |字符串| (1) |< br/>----------------------------------
|usingDecrypt |字符串| (1)|
----------------------------------
6.7.2主机attribute 用于标识不同的实例,一般我们用*M1表示writehost,*S1表示readhost。
6.7.3 网址attribute
后端实例连接地址。如果使用原生dbdriver,一般是地址:端口的形式。如果使用jdbc或者其他dbdriver,需要特别指定。使用jdbc时,可以这样做:jdbc:mysql://localhost:3306/。
6.7.4 用户属性
后端存储实例所需的用户名
6.7.5 密码属性
后端存储实例所需的密码
6.7 .6weight属性
权重在readhost中配置为读节点的权重(1.4以后)
6.7.7usingDecrypt属性
是否对密码进行加密,默认为0,否、如果要启用配置1

感谢您仔细阅读本文。希望小编分享的这篇文章《如何在mycat中配置datanode和datahost》对大家有所帮助。也希望大家多多支持。关注行业资讯频道,更多相关知识有等你来学习!

1. 本站所有资源来源于用户上传或网络,仅作为参考研究使用,如有侵权请邮件联系站长!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > 如何在mycat中配置datanode和datahost

用户评论