8.22

1.设置主从从mysql57服务器

1)配置主数据库

root@msater_5 \~\]# systemctl stop filewalld \[root@msater_5 \~\]# setenforce 0 \[root@msater_5 \~\]# systemctl disable filewalld \[root@msater_5 \~\]# ls anaconda-ks.cfg mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz \[root@msater_5 \~\]# tar -xf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz \[root@msater_5 \~\]# cp -r mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql \[root@msater_5 \~\]# rm -rf /etc/my.cnf \[root@msater_5 \~\]# mkdir /usr/local/mysql/mysql-files \[root@msater_5 \~\]# useradd -r -s /sbin/nologin mysql \[root@msater_5 \~\]# [chown](https://so.csdn.net/so/search?q=chown&spm=1001.2101.3001.7020 "chown") mysql:mysql /usr/local/mysql/mysql-files \[root@msater_5 \~\]# chown 750 /usr/local/mysql/mysql-files \[root@msater_5 \~\]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql 2024-08-21T09:39:16.036321Z 0 \[Warning\] CA certi2024-08-21T09:39:16.384066Z 1 \[Note\] A temporary password is generated for root@localhost: RV3DtuxCi;A- \[root@msater_5 \~\]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql57 \[root@msater_5 \~\]# vim /usr/local/mysql/my.cnf \[mysqld

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/tmp/mysql.sock

port=3306

log-error=/usr/local/mysql/data/db01-master.err

log-bin=/usr/local/mysql/data/binlog

server-id=10

character_set_server=utf8mb4

root@msater_5 \~\]# service mysql57 start \[root@msater_5 \~\]# /usr/local/mysql/bin/mysql -p Enter password: mysql\> alter user 'root'@'localhost' identified by 'root'; Query OK, 0 rows affected (0.00 sec) mysql\> create user 'li'@'%' identified by 'li'; Query OK, 0 rows affected (0.00 sec) mysql\> grant all on \*.\* to 'li'@'%'; uery OK, 0 rows affected (0.01 sec) mysql\> flush privileges; Query OK, 0 rows affected (0.01 sec) mysql\> create user 'slave'@'%' identified by 'slave'; Query OK, 0 rows affected (0.00 sec) mysql\> grant replication slave on \*.\* to 'slave'@'%'; Query OK, 0 rows affected (0.00 sec) mysql\> flush privileges; Query OK, 0 rows affected (0.00 sec) 2)配置slave01数据库 \[root@slave01_5 \~\]# ls anaconda-ks.cfg mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz \[root@slave01_5 \~\]# systemctl stop firewalld \[root@slave01_5 \~\]# systemctl disable firewalld \[root@slave01_5 \~\]# setenforce 0 \[root@slave01_5 \~\]# tar -xf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz \[root@slave01_5 \~\]# cp -r mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql \[root@slave01_5 \~\]# rm -rf /etc/my.cnf \[root@slave01_5 \~\]# mkdir /usr/local/mysql/mysql-files \[root@slave01_5 \~\]# useradd -r -s /sbin/nologin mysql \[root@slave01_5 \~\]# chown mysql:mysql /usr/local/mysql/mysql-files/ \[root@slave01_5 \~\]# chown 750 /usr/local/mysql/mysql-files/ \[root@slave01_5 \~\]# yum -y install rsync 3)配置slave02数据库 \[root@slave01_5 \~\]# ls anaconda-ks.cfg mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz \[root@slave01_5 \~\]# systemctl stop firewalld \[root@slave01_5 \~\]# systemctl disable firewalld \[root@slave01_5 \~\]# setenforce 0 \[root@slave01_5 \~\]# tar -xf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz \[root@slave01_5 \~\]# cp -r mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql \[root@slave01_5 \~\]# rm -rf /etc/my.cnf \[root@slave01_5 \~\]# mkdir /usr/local/mysql/mysql-files \[root@slave01_5 \~\]# useradd -r -s /sbin/nologin mysql \[root@slave01_5 \~\]# chown mysql:mysql /usr/local/mysql/mysql-files/ \[root@slave01_5 \~\]# chown 750 /usr/local/mysql/mysql-files/ \[root@slave01_5 \~\]# yum -y install rsync 4)同步data \[root@msater_5 \~\]# service mysql57 stop \[root@msater_5 \~\]# rm -rf /usr/local/mysql/data/auto.cnf \[root@msater_5 \~\]# yum -y install rsync \[root@msater_5 \~\]# rsync -av /usr/local/mysql/data [email protected]:/usr/local/mysql/ \[root@msater_5 \~\]# rsync -av /usr/local/mysql/data [email protected]:/usr/local/mysql/ 5)修改slave01配置文件 \[root@slave01_5 \~\]# ls /usr/local/mysql/ bin docs lib man README support-files data include LICENSE mysql-files share \[root@slave01_5 \~\]# vim /usr/local/mysql/my.cnf \[mysqld

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/tmp/mysql.sock

port=3310

log-error=/usr/local/mysql/data/err.log

relay-log=/usr/local/mysql/data/relaylog

character_set_server=utf8mb4

server-id=11

root@slave01_5 \~\]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql57 \[root@slave01_5 \~\]# sed -i '$aexport PATH=$PATH:/usr/local/mysql/bin' /etc/profile \[root@slave01_5 \~\]# source /etc/profile 6)修改slave02配置文件 \[root@slave01_5 \~\]# ls /usr/local/mysql/ bin docs lib man README support-files data include LICENSE mysql-files share \[root@slave01_5 \~\]# vim /usr/local/mysql/my.cnf \[mysqld

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/tmp/mysql.sock

port=3310

log-error=/usr/local/mysql/data/err.log

relay-log=/usr/local/mysql/data/relaylog

character_set_server=utf8mb4

server-id=12

root@slave01_5 \~\]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql57 \[root@slave01_5 \~\]# sed -i '$aexport PATH=$PATH:/usr/local/mysql/bin' /etc/profile \[root@slave01_5 \~\]# source /etc/profile 7)主服务器锁表 \[root@msater_5 \~\]# mysql -proot mysql\> select user,host from mysql.user; +---------------+-----------+ \| user \| host \| +---------------+-----------+ \| slave \| % \| \| li \| % \| \| mysql.session \| localhost \| \| mysql.sys \| localhost \| \| root \| localhost \| +---------------+-----------+ 5 rows in set (0.00 sec) mysql\> flush tables with read lock; Query OK, 0 rows affected (0.00 sec) mysql\> show master status; +---------------+----------+--------------+------------------+-------------------+ \| File \| Position \| Binlog_Do_DB \| Binlog_Ignore_DB \| Executed_Gtid_Set \| +---------------+----------+--------------+------------------+-------------------+ \| binlog.000002 \| 154 \| \| \| \| +---------------+----------+--------------+------------------+-------------------+ 1 row in set (0.00 sec) 8)配置主从服务 \[root@slave01_5 \~\]# mysql -uroot -proot mysql\> change master to master_host="10.0.0.57",master_user="slave",master_password="slave",master_log_file="binlog.000002",master_log_pos=154; Query OK, 0 rows affected, 2 warnings (0.01 sec) mysql\> start slave; Query OK, 0 rows affected (0.01 sec) mysql\> show slave status\\G; \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* 1. row \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* Slave_IO_State: Waiting for master to send event Master_Host: 192.168.2.57 Master_User: slave Master_Port: 3306 Connect_Retry: 60 Master_Log_File: binlog.000002 Read_Master_Log_Pos: 154 Relay_Log_File: relaylog.000002 Relay_Log_Pos: 317 Relay_Master_Log_File: binlog.000002 Slave_IO_Running: Yes Slave_SQL_Running: Yes 9)配置主从从服务 \[root@slave01_5 \~\]# mysql -uroot -proot mysql\> change master to master_host="10.0.0.57",master_user="slave",master_password="slave",master_log_file="binlog.000002",master_log_pos=154; Query OK, 0 rows affected, 2 warnings (0.01 sec) mysql\> start slave; Query OK, 0 rows affected (0.01 sec) mysql\> show slave status\\G; \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* 1. row \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* Slave_IO_State: Waiting for master to send event Master_Host: 192.168.2.57 Master_User: slave Master_Port: 3306 Connect_Retry: 60 Master_Log_File: binlog.000002 Read_Master_Log_Pos: 154 Relay_Log_File: relaylog.000002 Relay_Log_Pos: 317 Relay_Master_Log_File: binlog.000002 Slave_IO_Running: Yes Slave_SQL_Running: Yes 2.在mysql中添加eleme[数据库设置](https://so.csdn.net/so/search?q=%E6%95%B0%E6%8D%AE%E5%BA%93%E8%AE%BE%E7%BD%AE&spm=1001.2101.3001.7020 "数据库设置")为utf8mb4 \[root@msater_5 \~\]# mysql -proot mysql\> unlock tables; Query OK, 0 rows affected (0.00 sec) mysql\> create database if not exists eleme charset utf8mb4; Query OK, 1 row affected (0.00 sec) mysql\> show databases; +--------------------+ \| Database \| +--------------------+ \| information_schema \| \| eleme \| \| mysql \| \| performance_schema \| \| sys \| \| test \| +--------------------+ 6 rows in set (0.00 sec) 3.添加表t_user(master) mysql\> use eleme; Database changed mysql\> create table t_user( -\> id int primary key auto_increment, -\> name varchar(45) not null, -\> username varchar(45) not null, -\> password varchar(45) not null, -\> remark varchar(45) -\> ); Query OK, 0 rows affected (0.01 sec) mysql\> show tables; +-----------------+ \| Tables_in_eleme \| +-----------------+ \| t_user \| +-----------------+ 1 row in set (0.00 sec) 4.添加2行记录(master) mysql\> insert into eleme.t_user values(1,'超级管理员','admin','admin','超级管理员'),(2,'普通用户','guest','guest','普通用户'); Query OK, 2 rows affected (0.00 sec) Records: 2 Duplicates: 0 Warnings: 0 mysql\> select \* from eleme.t_user; +----+-----------------+----------+----------+-----------------+ \| id \| name \| username \| password \| remark \| +----+-----------------+----------+----------+-----------------+ \| 1 \| 超级管理员 \| admin \| admin \| 超级管理员 \| \| 2 \| 普通用户 \| guest \| guest \| 普通用户 \| +----+-----------------+----------+----------+-----------------+ 2 rows in set (0.00 sec) 5.使用mycat为三台数据库设置负载均衡(读写分离) 1)前期jdk环境部署 \[root@mycat \~\]# systemctl stop firewalld \[root@mycat \~\]# systemctl disable firewalld \[root@mycat \~\]# ls anaconda-ks.cfg Mycat-server-1.6.5-release-20180122220033-linux.tar.gz jdk-8u192-linux-x64.tar.gz v \[root@mycat \~\]# tar -xf jdk-8u192-linux-x64.tar.gz \[root@mycat \~\]# tar -xf Mycat-server-1.6.5-release-20180122220033-linux.tar.gz \[root@mycat \~\]# cp -r jdk1.8.0_192/ /usr/local/jdk \[root@mycat \~\]# cp -r mycat/ /usr/local/ \[root@mycat \~\]# ls /usr/local/jdk/ bin lib src.zip COPYRIGHT LICENSE THIRDPARTYLICENSEREADME-JAVAFX.txt include man THIRDPARTYLICENSEREADME.txt javafx-src.zip README.html jre release \[root@mycat \~\]# sed -i '$aexport JAVA_HOME=/usr/local/jdk' /etc/profile \[root@mycat \~\]# source /etc/profile \[root@mycat \~\]# $JAVA_HOME -bash: /usr/local/jdk: 是一个目录 \[root@mycat \~\]# sed -i '$aexport PATH=$PATH:$JAVA_HOME/bin' /etc/profile \[root@mycat \~\]# source /etc/profile \[root@mycat \~\]# $PATH -bash: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/jdk/bin: 没有那个文件或目录 \[root@mycat \~\]# javac -version javac 1.8.0_192 2)修改server.xml配置文件 \[root@mycat \~\]# vim /usr/local/mycat/conf/server.xml 93 \ 94 \li\ 95 \eleme\ # 注释 107 \

相关推荐
是店小二呀27 分钟前
【优选算法 | 字符串】字符串模拟题精选:思维+实现解析
android·c++·算法
奔跑吧 android2 小时前
【android bluetooth 协议分析 12】【A2DP详解 1】【车机侧蓝牙音乐免切源介绍】
android·bluetooth·bt·gd·a2dpsink·免切源·aosp14
飞猿_SIR3 小时前
Android Exoplayer多路不同时长音视频混合播放
android·音视频
前端懒猫3 小时前
android实现USB通讯
android
jiet_h4 小时前
Android锁
android
VirusVIP5 小时前
Windows CMD通过adb检查触摸屏Linux驱动是否被编译
linux·运维·adb
teacher伟大光荣且正确12 小时前
Qt Creator 配置 Android 编译环境
android·开发语言·qt
飞猿_SIR15 小时前
Android Exoplayer 实现多个音视频文件混合播放以及音轨切换
android·音视频
HumoChen9915 小时前
GZip+Base64压缩字符串在ios上解压报错问题解决(安卓、PC模拟器正常)
android·小程序·uniapp·base64·gzip
didiplus18 小时前
MySQL 8.0 OCP(1Z0-908)英文题库(31-40)
mysql·adb·ocp·数据库管理员·mysql认证