博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一、Mycat 环境搭建
阅读量:6428 次
发布时间:2019-06-23

本文共 2884 字,大约阅读时间需要 9 分钟。

下载mycat.linux 版本

安装vmware,centos mini版本

vmware centos设置固定IP:

安装JDK,自己百度搜索吧

安装MySql5.6: 

注:可以下载XSHELL、XFTP作为远程连接工具,下载作为Mysql客户端工具

修改%MycatHOME%/conf/server.xml、%MycatHOME%/conf/schema.xml

重启MyCAT,使用MySQL客户端连接MyCAT,需要注意的是,默认数据端口为8066,管理端口为9066,在MySQL客户端连接MyCAT时,注意填写端口为8066,用户名/密码根据server.xml中的配置进行填写。

 使用客户端工具连接Mycat,配置schema.xmlMycat连接具体的数据库。我们的数据库操作就使用mycat的连接操作。

Mycat官网地址:

Mycat文档地址:

Mycat安装数据库文件:

 

数据库序列创建

DROP TABLE IF EXISTS MYCAT_SEQUENCE;  CREATE TABLE MYCAT_SEQUENCE (  name VARCHAR(50) NOT NULL,  current_value INT NOT NULL,  increment INT NOT NULL DEFAULT 100, PRIMARY KEY (name) ) ENGINE=InnoDB;-- ------------------------------ Function structure for `mycat_seq_currval`-- ----------------------------DROP FUNCTION IF EXISTS `mycat_seq_currval`;DELIMITER ;;CREATE DEFINER=`root`@`%` FUNCTION `mycat_seq_currval`(seq_name VARCHAR(50)) RETURNS varchar(64) CHARSET latin1    DETERMINISTICBEGIN    DECLARE retval VARCHAR(64);    SET retval="-1,0";    SELECT concat(CAST(current_value AS CHAR),",",CAST(increment AS CHAR) ) INTO retval FROM MYCAT_SEQUENCE  WHERE name = seq_name;    RETURN retval ;END;;DELIMITER ;-- ------------------------------ Function structure for `mycat_seq_nextval`-- ----------------------------DROP FUNCTION IF EXISTS `mycat_seq_nextval`;DELIMITER ;;CREATE DEFINER=`root`@`%` FUNCTION `mycat_seq_nextval`(seq_name VARCHAR(50)) RETURNS varchar(64) CHARSET latin1    DETERMINISTICBEGIN    DECLARE retval VARCHAR(64);    DECLARE val BIGINT;    DECLARE inc INT;    DECLARE seq_lock INT;    set val = -1;    set inc = 0;    SET seq_lock = -1;    SELECT GET_LOCK(seq_name, 15) into seq_lock;    if seq_lock = 1 then      SELECT current_value + increment, increment INTO val, inc FROM MYCAT_SEQUENCE WHERE name = seq_name for update;      if val != -1 then          UPDATE MYCAT_SEQUENCE SET current_value = val WHERE name = seq_name;      end if;      SELECT RELEASE_LOCK(seq_name) into seq_lock;    end if;    SELECT concat(CAST((val - inc + 1) as CHAR),",",CAST(inc as CHAR)) INTO retval;    RETURN retval;END;;DELIMITER ;-- ------------------------------ Function structure for `mycat_seq_setval`-- ----------------------------DROP FUNCTION IF EXISTS `mycat_seq_setval`;DELIMITER ;;CREATE DEFINER=`root`@`%` FUNCTION `mycat_seq_setval`(seq_name VARCHAR(50), value INTEGER) RETURNS varchar(64) CHARSET latin1    DETERMINISTICBEGIN    DECLARE retval VARCHAR(64);    DECLARE inc INT;    SET inc = 0;    SELECT increment INTO inc FROM MYCAT_SEQUENCE WHERE name = seq_name;    UPDATE MYCAT_SEQUENCE SET current_value = value WHERE name = seq_name;    SELECT concat(CAST(value as CHAR),",",CAST(inc as CHAR)) INTO retval;    RETURN retval;END;;DELIMITER ;INSERT INTO MYCAT_SEQUENCE VALUES ('GLOBAL', 0, 100);SELECT MYCAT_SEQ_SETVAL('GLOBAL', 1);SELECT MYCAT_SEQ_CURRVAL('GLOBAL');SELECT MYCAT_SEQ_NEXTVAL('GLOBAL');

 

 

 

转载于:https://my.oschina.net/wjgood/blog/664756

你可能感兴趣的文章
编程入门指南
查看>>
移动端的自适应方案—REM
查看>>
你真的懂volatile吗
查看>>
Android 编译时注解-提升
查看>>
[译] 别再对 Angular Modules 感到迷惑
查看>>
SQL2Struct:一款根据sql语句自动生成golang结构体的chrome插件
查看>>
说说 Spring AOP 中 @Aspect 的高级用法
查看>>
Mysql实战面试题
查看>>
View绘制流程第三步:递归draw源码分析
查看>>
Workbox CLI中文版
查看>>
贝聊亿级数据库分库分表实践
查看>>
同时连接gitlab和github
查看>>
vuex源码分析
查看>>
Android OTG之USB转串口模块通讯
查看>>
利用apidoc自动生成model文档
查看>>
编写优雅代码的最佳实践
查看>>
iOS动画全面解析
查看>>
Java并发编程实战笔记3:基础构建模块
查看>>
函数式编程及其在react中的应用
查看>>
python读写文件
查看>>