注释使用SQL注释方式表达,可以用于动态更新Mycat配置并且把配置持久化,它的设计目标是为了动态的更新mycat的配置。但是由于配置的属性复杂,它不会自动的更改真实数据库的schema。
通过注解配置不会自动创建物理库物理表(与直接使用自动化建表语句不同,它会自动建物理库物理表),所以要保证物理库物理表的在真实数据库上是与配置对应的。一般来说,原型库(prototype)上必须存在与逻辑库逻辑表完全一致得物理库物理表,以便mycat读取表和字段信息。
如果搞不懂配置,可以尝试使用自动化建表语句创建测试的物理库物理表,它会自动生成配置文件,然后通过查看本地的配置文件,观察它的属性,就可以知道什么回事。因为自动化建表语句过于简单,可能不适合公司的业务,此时需要更改配置文件的属性来调整。这种自己更改调整的属性值不属于mycat的开发测试范畴之内,也不能受mycat为自动化建表的测试保证。
重置配置
/*+ mycat:resetConfig{} */
创建用户
/*+ mycat:createUser{
"username":"user",
"password":"",
"ip":"127.0.0.1",
"transactionType":"xa"
} */
删除用户
/*+ mycat:dropUser{
"username":"user"} */
显示用户
/*+ mycat:showUsers */
修改表序列号为雪花算法
/*+ mycat:setSequence{"name":"db1_travelrecord","time":true} */;
创建数据源
/*+ mycat:createDataSource{
"dbType":"mysql",
"idleTimeout":60000,
"initSqls":[],
"initSqlsGetConnection":true,
"instanceType":"READ_WRITE",
"maxCon":1000,
"maxConnectTimeout":3000,
"maxRetryCount":5,
"minCon":1,
"name":"dr0",
"password":"123456",
"type":"JDBC",
"url":"jdbc:mysql://127.0.0.1:3306?useUnicode=true&serverTimezone=UTC&characterEncoding=UTF-8",
"u

本文介绍了使用SQL注释方式动态更新Mycat配置的方法,包括数据源创建、用户管理、表序列号设置、集群配置以及显示系统状态等操作。注意,这些配置不会自动创建物理库和表,需确保与真实数据库同步。此外,还提到了自动化建表的局限性和如何根据配置文件调整属性。
最低0.47元/天 解锁文章
8842

被折叠的 条评论
为什么被折叠?



