从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