Mycat学习手册--12高可用及权限配置

15.高可用

mycat可以实现mysql的高可用,那么mycat本身有时也需要提供高可用策略,可以采用HAProxy、keeplived等软件进行实现。

  • HAProxy

  • Keepalived

具体实现可以参考CSDN文章(基于Docker容器):

https://blog.csdn.net/weixin_32822759/article/details/106590268

16.Mycat权限配置

server.xml 几乎保存了所有 mycat 需要的系统配置信息。其在代码内直接的映射类为 SystemConfig 类。

1. user标签权限控制

目前 Mycat 对于中间件的连接控制并没有做太复杂的控制,目前只做了中间件逻辑库级别的读

写权限控制。是通过 server.xml 的 user 标签进行配置。

<user name="mycat">
	<property name="password">mycat</property>
	<property name="schemas">TESTDB</property>
	<property name="readOnly">true</property>
</user>
<user name="mycat2">
	<property name="password">mycat</property>
	<property name="schemas">order</property>
</user>

配置说明:

配置中 name 是应用连接中间件逻辑库的用户名。

mycat 中 password 是应用连接中间件逻辑库的密码。

TESTDB是应用当前连接的逻辑库中所对应的逻辑表。schemas 中可以配置一个或多个。

true 中 readOnly 是应用连接中间件逻辑库所具有的权限。true 为只读,false 为读写都有,默认为 false

2. privileges标签权限控制

在 user 标签下的 privileges 标签可以对逻辑库(schema)、表(table)进行精细化的 DML 权限控

制。

privileges 标签下的 check 属性,如为 true 开启权限检查,为 false 不开启,默认为 false。

由于 Mycat 一个用户的 schemas 属性可配置多个逻辑库(schema) ,所以 privileges 的下级

节点 schema 节点同样可配置多个,对多库多表进行细粒度的 DML 权限控制。

Schema/Table 上的 dml 属性描述

注: 设置了 schema , 但只设置了个别 table 或 未设置 table 的 DML,自动继承 schema 的 DML 属性

privileges 配置事例如下:

<user name="zhuam">
	<property name="password">111111</property>
	<property name="schemas">TESTDB,TESTDB1</property>
	<!-- 表级权限: Table 级的 dml(curd)控制,未设置的 Table 继承 schema 的 dml -->
	<!-- TODO: 非 CURD SQL 语句, 透明传递至后端 -->
	<privileges check="true">
		<schema name="TESTDB" dml="0110" >
			<table name="table01" dml="0111"></table>
			<table name="table02" dml="1111"></table>
		</schema>
		<schema name="TESTDB1" dml="0110">
			<table name="table03" dml="1110"></table>
			<table name="table04" dml="1010"></table>
		</schema>
	</privileges>
</user>

关注“指尖架构师”公众号,获取更多资讯
在这里插入图片描述在这里插入图片描述

  • 20
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

金山老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值