centos7部署mysql双主服务器
https://dev.mysql.com/downloads/mysql/
安装依赖:
yum -y install cmake gcc gcc-c++ ncurses ncurses-devel libaio-devel openssl openssl-devel
创建文件夹:
mkdir mysql_1mkdir mysql_2
解压:
tar -xzf mysql-boost-5.7.24.tar.gz -C mysql_1tar -xzf mysql-boost-5.7.24.tar.gz -C mysql_2
创建用户:
useradd mysql_1 -s /sbin/nologin -Museradd mysql_2 -s /sbin/nologin -M
创建文件夹:
mkdir -p /data/mysql/mysql_1/datamkdir -p /data/mysql/mysql_2/data
编译安装:
cd mysql_1/mysql-5.7.24cmake . -DCMAKE_INSTALL_PREFIX=/data/mysql/mysql_1 \-DMYSQL_DATADIR=/data/mysql/mysql_1/data \-DSYSCONFDIR=/etc \-DMYSQL_TCP_PORT=3307 \-DWITH_BOOST=./boostmake && make install
cd mysql_2/mysql-5.7.24cmake . -DCMAKE_INSTALL_PREFIX=/data/mysql/mysql_2 \-DMYSQL_DATADIR=/data/mysql/mysql_2/data \-DSYSCONFDIR=/etc \-DMYSQL_TCP_PORT=3308 \-DWITH_BOOST=./boostmake && make install
改变所属主:
chown -R mysql_1.mysql_1 /data/mysql/mysql_1chown -R mysql_2.mysql_2 /data/mysql/mysql_2
创建配置文件:
vim /etc/mysql_1.cnf
[mysqld]user=mysql_1server-id=1port=3307basedir=/data/mysql/mysql_1datadir=/data/mysql/mysql_1/datasocket=/tmp/mysql_1.sockngram_token_size=2log-bin=mysql_1slave-skip-errors=all
vim /etc/mysql_2.cnf
[mysqld]user=mysql_2server-id=2port=3308basedir=/data/mysql/mysql_2datadir=/data/mysql/mysql_2/datasocket=/tmp/mysql_2.sockngram_token_size=2log-bin=mysql_2slave-skip-errors=all
初始化:
/data/mysql/mysql_1/bin/mysqld --initialize-insecure --user=mysql_1 --datadir=/data/mysql/mysql_1/data/data/mysql/mysql_1/bin/mysql_ssl_rsa_setup --defaults-file=/etc/mysql_1.cnf/data/mysql/mysql_2/bin/mysqld --initialize-insecure --user=mysql_2 --datadir=/data/mysql/mysql_2/data/data/mysql/mysql_2/bin/mysql_ssl_rsa_setup --defaults-file=/etc/mysql_2.cnf
启动:
/data/mysql/mysql_1/bin/mysqld_safe --defaults-file=/etc/mysql_1.cnf &/data/mysql/mysql_2/bin/mysqld_safe --defaults-file=/etc/mysql_2.cnf &
创建远程用户:
/data/mysql/mysql_1/bin/mysql -S /tmp/mysql_1.sockgrant all on *.* to 'root'@'%' identified by '123456';update mysql.user set Grant_priv='Y' where Host='%';delete from mysql.user where Host<>'%' or User<>'root';quit;
/data/mysql/mysql_2/bin/mysql -S /tmp/mysql_2.sockgrant all on *.* to 'root'@'%' identified by '123456';update mysql.user set Grant_priv='Y' where Host='%';delete from mysql.user where Host<>'%' or User<>'root';quit;
显示主服务器状态:
show master status;
切换到主服务器:
change master tomaster_host='172.20.10.12',master_port=3308,master_user='root',master_password='123456',master_log_file='mysql_2.000003',master_log_pos=154;
change master tomaster_host='172.20.10.12',master_port=3307,master_user='root',master_password='123456',master_log_file='mysql_1.000004',master_log_pos=154;
开启从服务器:
start slave;
显示从服务器状态:
show slave status\G
关闭:
pkill mysql
广告
给大家推荐几个好用的工具
时间校验工具ip查询工具二维码生成工具json格式化工具时间缀-时间转换工具声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。