1-3Linux读写分离MySQL

从0开始学运维~~~~

192.168.1.114 数据库主库

192.168.1.115 数据库从库

192.168.1.116 mycat客户端

1)MyCAT安装之前,需要先安装jdk (Java Development Kit) ,JDK是 Java 语言的软件开发工具包(SDK))。部署方法如下所示:

tar -xzvf jdk1.8.0_131.tar.gz

mkdir -p /usr/java/

\mv jdk1.8.0_131 /usr/java/

ls -l /usr/java/jdk1.8.0_131/

2)配置JAVA环境变量,/etc/profile配置文件中末尾加入如下代码:

export JAVA_HOME=/usr/java/jdk1.8.0_131

export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin

3)执行如下代码使其环境变量,并查看环境变量,操作指令如下:

source /etc/profile

java --version

官网下载MyCAT最新稳定版本2.0:MyCat2 ,操作代码如下:

​
#下载Mycat安装包

wget http://dl.mycat.org.cn/2.0/install-template/mycat2-install-template-1.21.zip

#下载Mycat 2所需依赖 jar

wegt http://dl.mycat.org.cn/2.0/1.21-release/mycat2-1.21-release-jar-with-dependencies.jar

unzip mycat2-install-template-1.21.zip

mv mycat /usr/local/

#Cp Mycat 2 所需依赖JAR包至Mycat的lib目录;

cp mycat2-1.21-release-jar-with-dependencies.jar /usr/local/mycat/lib/;

#授予Mycat bin目录下文件执行权限;

chmod +x /usr/local/mycat/bin/*

#查看Mycat程序是否部署成功;

ls -l /usr/local/mycat/

在主从节点均创建给Mycat 程序使用的用户并授权,操作指令如下:

CREATE USER 'mycat'@'192.168.1.146' IDENTIFIED BY '123456';

#授权用户访问;

GRANT XA_RECOVER_ADMIN ON *.* to 'mycat'@'192.168.1.146';

GRANT ALL PRIVILEGES ON *.* to 'mycat'@'192.168.1.146';

FLUSH PRIVILEGES;

​

接下来执行下一步操作
​
1)在Master主节点创建Mycat使用的数据库 mycat,操作指令如下:

#下载Mycat安装包

wget http://dl.mycat.org.cn/2.0/install-template/mycat2-install-template-1.21.zip

#下载Mycat 2所需依赖 jar

wegt http://dl.mycat.org.cn/2.0/1.21-release/mycat2-1.21-release-jar-with-dependencies.jar

unzip mycat2-install-template-1.21.zip

mv mycat /usr/local/

#Cp Mycat 2 所需依赖JAR包至Mycat的lib目录;cp mycat2-1.21-release-jar-with-dependencies.jar /usr/local/mycat/lib/;

#授予Mycat bin目录下文件执行权限;

chmod +x /usr/local/mycat/bin/*

#查看Mycat程序是否部署成功;

ls -l /usr/local/mycat/

在主从节点均创建给Mycat 程序使用的用户并授权,操作指令如下:

CREATE USER 'mycat'@'192.168.1.146' IDENTIFIED BY '123456';

#授权用户访问;

GRANT XA_RECOVER_ADMIN ON *.* to 'mycat'@'192.168.1.146';

GRANT ALL PRIVILEGES ON *.* to 'mycat'@'192.168.1.146';

FLUSH PRIVILEGES;

​

1)在Master主节点创建Mycat使用的数据库 mycat,操作指令如下:

create database mycat;

#这个库称为Mycat 的原型库(prototype),Mycat 在启动时会自动在原型库下创建其运行时所需的数据表。





#进入DataSource目录;

cd /usr/local/mycat/conf/datasources/

#拷贝模板文件,生成master和slave配置文件;

\cp prototypeDs.datasource.json master.datasource.json

\cp prototypeDs.datasource.json slave-01.datasource.json

#修改master.datasource.json代码;



"name":"prototypeDs",

"password":"123456",

url":"jdbc:mysql://192.168.1.145(主库ip):3306/discuz?useUnicode=true&serverTimezone=Asia/Shanghai&characterEncoding=UTF-8",

"user":"root",

"weight":0



#修改slave-01.datasource.json代码;



"name":"prototypeDs",

"password":"123456",



"url":"jdbc:mysql://192.168.1.145:3306/discuz?useUnicode=true&serverTimezone=Asia/Shanghai&characterEncoding=UTF-8",

"user":"root",

1)配置数据源的集群(cluster)信息,操作指令如下:


#进入Clustesr目录;

cd /usr/local/mycat/conf/clusters/

#不能删除 prototype.cluster.json,否则启动 Mycat 时会报错;

\cp prototype.cluster.json master-slave.cluster.json

#修改master-slave.cluster.json代码;



"masters":[

"master"

],



"replicas":[

"slave-01"

],



"maxCon":5000,

"name":"master-slave",

"readBalanceType":"BALANCE_ALL",

"switchType":"NOT_SWITCH"

1)配置物理库discuz(数据库名,自己随便取)(schema)和 Mycat 中数据源/数据源集群的关系,操作的方法如下:

#进入Schemas目录;

cd /usr/local/mycat/conf/schemas/

#创建discuz.schema.json文件,代码;

cat>discuz.schema.json<<EOF

{

"schemaName": "discuz",

"targetName": "master-slave",

"normalTables": {}

}



1)修改 Mycat 登录用户信息,操作的指令如下:



#进入Users目录;

cd /usr/local/mycat/conf/users/

#修改root.user.json文件,代码;

{

"dialect":"mysql",

"ip":null,

"password":"123456",

"transactionType":"xa",

"username":"root"

}



#启动服务;

/usr/local/mycat/bin/mycat start



1)在mycat服务器中进入MyCAT命令行界面,操作指令如下:

mysql -h192.168.1.146(mycat服务器ip) -uroot -p123456 -P8066

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值