Mysql主从同步配置

目录

1.环境准备

2.安装数据库服务

3.主库配置文件

4.从库配置文件

5.启动服务 

6.主库授权

7.从库授权

8.主库查看连接

9.从库启动

10.主库查看连接

11.从库查看数据同步情况

12.主从库查看日志信息


1.环境准备

准备两台虚拟机a和b,a和b网络要通,a和b虚拟机上安装数据库服务,a作为主库,b作为从库。

2.安装数据库服务

yum -y install mariadb mariadb-server
    #打开数据库配置文件

3.主库配置文件

vim /etc/my.cnf
    #新增以下内容
    server-id=110
	log-bin=mariadb-bin

4.从库配置文件

vim /etc/my.cnf
    #新增以下内容
    server-id=120

5.启动服务 

systemctl start mariadb
    #主从都执行

6.主库授权

mysql
    #登录数据库

grant replication slave on *.* to slave@'192.168.1.2' identified by '123456';
    #为从库授权,所有数据库和表,slave用户,从库地址192.168.1.2,密码为123456

show master status
    #查看主服务器的状态,File字段为bin-log日志名,Position字段值为bin-log日志的大小,需在从服务器配置。

7.从库授权

mysql
    #登录数据库

change master to master_user='slave',master_password='123456',master_host='192.168.1.1',master_log_file='mysql-bin.000003',master_log_pos=257;
    #授权声明主服务器,授权用户为slave,密码为123456,主服务器地址为192.168.1.1,bin-log日志与主数据库查询的大小编号一致,例mysql-bin.000003,日志大小为257。

命令执行后,再打开一个从库的终端
cd /var/lib/mysql/

ls
    #发现主数据库的日志文件已经产生(master.info)

vim master.info
    #查看同步连接备份的信息

8.主库查看连接

netstat -anpt
    #查看3306端口无连接

9.从库启动

show slave status\G;
    #查看此时从数据库的状态
    Slave _IO_Running:No	#连接线程(负责连接)
	Slave_SQL_Running:No	#解析进程,从主服务器下载后,进行解析命令的进程(负责下载)

start slave;
    #启动从服务进程,进行连接主数据库

show slave status\G;
    #再次查看数据库的状态,显示已经连接成功

10.主库查看连接

netstat -anpt
    #查看3306端口已被连接成功

mysql
    #登录数据库

show databases;
    #查看数据库

create database xbz;
    #创建xbz数据库

use xbz;

create table xbz001(ID int,NAME char(20));
    #创建xbz数据库中的xbz001数据表

insert into xbz001 values (1,'zhangsan'),(2,'lisisi');
    #在表中插入数据

11.从库查看数据同步情况

show tables;
    #查看数据表

use xbz;

select * from xbz001;
    #从库已成功同步主库的数据

12.主从库查看日志信息

cd /var/lib/mysql/
    #查看数据库日志文件mariadb-bin.000003的变化
    #只要主服务器更新,从服务器就会通过master.info文件进行实时更新
#主主数据库就是互为主从模式,互为备份,a给b授权,b再给a授权

你可能感兴趣的:(数据库,mysql,数据库,linux,运维)