案例1、二进制安装MYSQL5.7 案例2、基于MYSQL5.7的GTID(两台主机)1、 主服务器上(1)vim /etc/my.cnf [mysqld] server-id=17 log-bin gtid_mode=ON enforce_gtid_consistency datadir=/data/mysql socket=/data/mysql/mysql.sock log-error=/data/mysql/mysql.log pid-file=/data/mysql/mysql.pid [client] socket=/data/mysql/mysql.sock(2)service mysqld restart (3)mysql> grant replication slave on *.* to repluser@'192.168.37.%' identified by 'centos';2、从服务器上(1)vim /etc/my.cnf [mysqld] server-id=27 gtid_mode=ON enforce_gtid_consistency datadir=/data/mysql socket=/data/mysql/mysql.sock log-error=/data/mysql/mysql.log pid-file=/data/mysql/mysql.pid [client] socket=/data/mysql/mysql.sock(2)service mysqld restart (3)mysql>CHANGE MASTER TO MASTER_HOST='主服务器', MASTER_USER='repluser', MASTER_PASSWORD='centos', MASTER_PORT=3306, MASTER_AUTO_POSITION=1;(4)mysql>start slave; 案例3、MYSQL读写分离(三台主机)读写分离服务器:192.168.43.101 主服务器:192.168.43.102 从服务器:192.168.43.103(1)首先实现主从服务器之间的主从复制,从服务器必须加read-only 选项(2)配置yum安装路径,安装PROXYSQL数据库,检验数据库连接是否正常 (3)向ProxySQL中添加MySQL节点,并加载和保存到磁盘中,以下操作不需要use main也可成功 (4)添加监控后端节点的用户。ProxySQL通过每个节点的read_only值来自动调整它们是属于读组还是写组在master上执行 ProxySQL上配置监控 1、监控模块的指标保存在monitor库的log表中2、查看监控连接是否正常的 (对connect指标的监控):(如果connect_error的结果为NULL则表示正常) 3、查看监控心跳信息 (对ping指标的监控):MySQL> select * from mysql_server_ping_log;4、查看read_only和replication_lag的监控日志MySQL> select * from mysql_server_read_only_log;MySQL> select * from mysql_server_replication_lag_log;(5)设置分组信息需要修改的是main库中的mysql_replication_hostgroups表,该表有3个字段:writer_hostgroup,reader_hostgroup,comment, 指定写组的id为10,读组的id为20 (6)配置发送SQL语句的用户在master节点上创建访问用户 在ProxySQL配置,将用户sqluser添加到mysql_users表中, default_hostgroup默认组设置为写组10,当读写分离的路由规则不符合时,会访问默认组的数据库 使用sqluser用户测试是否能路由到默认的10写组实现读、写数据mysql -usqluser -pmagedu -P6033 -h127.0.0.1 -e 'select @@server_id'mysql -usqluser -pmagedu -P6033 -h127.0.0.1 -e 'create database testdb'mysql -usqluser -pmagedu testdb -P6033 -h127.0.0.1 -e 'create table t(id int)'(7)在proxysql上配置路由规则,实现读写分离