搭建MySQL服务器, 并实现主从复制

环境

主库ip:192.168.253.128
从库ip:192.168.253.140
系统:CentOS7
MySQL版本:5.6.39

第一步:安装MySQL

这里使用二进制包方式安装,二进制包可以在官网下载 https://dev.mysql.com/downloads/mysql/

在主库和从库上都安装MySQL

tar -xf mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.6.39-linux-glibc2.12-x86_64 /usr/local/mysql5.6
ln -sv /usr/local/mysql5.6 /usr/local/mysql
PATH=/usr/local/mysql/bin/:$PATH
useradd -M -s /sbin/nologin  mysql
chown -R mysql:mysql /usr/local/mysql5.6

初始化数据库

yum install perl-Data-Dumper -y
yum install libaio libaio-devel -y #不安装这个包的话初始化数据库可能会报错缺包
/usr/local/mysql/scripts/mysql_install_db  --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/

第二步:修改主库配置文件

[root@localhost src]# cat /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
symbolic-links=0
user=mysql
innodb_file_per_table=1
server-id=1
log-bin=/usr/local/mysql/data/master-log

[mysqld_safe]
log-error=/usr/local/mysql/data/err.log
pid-file=/usr/local/mysql/data/mysql.pid

!includedir /etc/my.cnf.d

启动主库

mysqld_safe  &

进入

mysql

在这里插入图片描述
进行一些简单的安全设置

 mysql_secure_installation -uroot

在这里插入图片描述

在这里插入图片描述

进入数据库添加用户,允许从库连接

mysql> GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'repl'@'192.168.253.140' IDENTIFIED BY  'replication';

第三步:修改从库配置文件

[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
symbolic-links=0
user=mysql
innodb_file_per_table=1
server-id=2    #这里的server-id一定要跟主库不同
relay-log=/usr/local/mysql/data  

[mysqld_safe]
log-error=/usr/local/mysql/data/err.log 
pid-file=/usr/local/mysql/data/mysql.pid  

!includedir /etc/my.cnf.d

启动

mysqld_safe  &

进行一些简单的安全设置

 mysql_secure_installation -uroot

第四步:备份主库

mysqldump -uroot -p --flush-logs --quick --single-transaction --master-data=2 --all-databases > ~/alldb.sql

再然后在从库上还原备份的主库

scp root@192.168.253.128:/root/alldb.sql ~/ #把备份文件拉到从库机器上
mysql -uroot -p < ~/alldb.sql  # 导入备份文件

第五步:在从库配置主从

首先需要看一下逻辑备份的文件,看一下主库binlog日志的位置,从哪开始往下复制
在这里插入图片描述
根据位置设置主从

CHANGE MASTER TO 
MASTER_HOST='192.168.253.128', 
MASTER_USER='repl', 
MASTER_PASSWORD='replication', 
MASTER_LOG_FILE='master-log.000002', 
MASTER_LOG_POS=120;

启动

mysql> START SLAVE;

查看是否成功

mysql> SHOW SLAVE STATUS\G

在这里插入图片描述
看到下面这两个就意味着成功了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值