Nginx和tomcat 项目安装省略
1、准备环境
序号 |
内网IP |
主机名Hostname |
服务service |
1 |
192.168.78.132 |
mysqlmaster |
mysql5.7、nginx |
2 |
192.168.78.133 |
mysqlslave |
mysql5.7、tomcat7、JDK1.8、mycat |
3 |
192.168.78.134 |
mysqlslave |
mysql5.7、tomcat7、JDK1.8 |
2、架构图
3、基础环境安装
以下每台服务器均需执行相同操作:
#关闭SELINUX sed -i 's/SELINUX=enforcing/SELINUX=disabled/'g /etc/selinux/config setenforce 0 #禁用系统防火墙 systemctl disable firewalld systemctl stop firewalld firewall-cmd –state #安装系统依赖 yum -y install iptables-services lrzsz libcgroup libtool-ltdl libseccomp policycoreutils-python crontabs sysstat tree telnet dstat iotop htop dos2unix nc nmap vim wget net-tools screen lsof tcpdump mtr libaio-devel bzip2 zip unzip #设置时区 timedatectl set-timezone Asia/Shanghai #设置对时 ntpdate cn.pool.ntp.org systemctl start ntpd #磁盘检查 df-h #主机名检查 hostname #如果不一致,修改hostnamectl set-hostname xxx |
4、三台都安装mysql5.7
官网直接下载
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
4.1、解压压缩包到目标位置
--解压压缩包
tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz -C /software/
cd /software
mv mysql-5.7.25-linux-glibc2.12-x86_64/ mysql
4.2、创建数据仓库目录
cd mysql
mkdir data
4.3、改变目录属有者
groupadd mysql
useradd -r -s /sbin/nologin -g mysql mysql -d /software/mysql
chown -R mysql:mysql /software/mysql/
4.4、配置参数
bin/mysqld --initialize --user=mysql --basedir=/software/mysql --datadir=/software/mysql/data/mysql
4.5、使用脚本工具生成密钥文件
bin/mysql_ssl_rsa_setup --datadir=/software/mysql/data/mysql
4.6、修改系统配置文件
cd support-files/
cp mysql.server /etc/init.d/mysql
4.7、修改以下内容
vi /etc/my.cnf
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
port=3306
datadir=/software/mysql/data/mysql
skip-grant-tables
4.8、启动mysql
/etc/init.d/mysql start
ln -s /software/mysql/bin/mysql /usr/bin/
service mysql start
4.9、登录数据库配置权限
mysql -hlocalhost -uroot -p
查看数据库:show databases;
创建数据库:create database db01;
增加用户权限:grant all privileges on *.* to 'root'@'%' identified by 'root123456';
刷新更改:flush privileges;
设置开机启动
chmod 755 /etc/init.d/mysql
chkconfig --add mysql
chkconfig --level 345 mysql on
5、mysql主从分离
5.1 操作主机
修改/etc/my.cnf文件
server-id=1 log_bin
binlog-do-db=baizhi(要同步的数据库) binlog-ignore-db=mysql(忽略同步的数据库)
5.2 修改从节点
修改/etc/my.cnf文件
server-id=133
重启 service mysql restart
登录从机mysql数据库
#关闭
stop slave;
#设置备份位置
change master to master_host='192.168.78.132',master_user='root',master_password='root123456',master_port=3306,master_log_file='mysql-bin.000002',master_log_pos=154;
#启动
start slave;
#查看从节点的状态 (两个都为yes即设置成功)
show slave status\G
6、使用mycat实现读写分离
6.1上传mycat安装包 /software/下
6.2 解压安装
6.3 配置环境变量
vi /etc/profile
#mysql_HOME
export PATH=/software/mysql/bin:$PATH
#JAVA_HOME
export JAVA_HOME=/software/jdk1.8
#MYCAT_HOME
export MYCAT_HOME=/software/mycat
#PATH
export PATH=$PATH:$JAVA_HOME/bin:$MYCAT_HOME/bin
生效
source /etc/profile
6.4 修改/confg目录下的server.xml和schema.xml配置文件
修改schema.xml
[root@mysqlslave conf]# cat schema.xml
writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
password="root123456">
6.5 启动mycat
mycat start
6.7连接测试
6.8 测试
主库写入数据同步到从库
注意项目中数据库连接的url需要修改为安装mycat的机器的ip地址,数据库名为schema.xml配置文件中的数据库名
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://192.168.78.133:8066/TESTDB?useUnicode=true&characterEncoding=utf8
jdbc.user=mycat
jdbc.password=123456