mysql日志主从复制
Posted 健身小白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql日志主从复制相关的知识,希望对你有一定的参考价值。
本人以经安装了mysql 首先将mysql 的data 目录进行物理备份。防止在做主从复制配置时候搞掉。
我这里是之前配置不来的时候搞烂了,启动不起来了,干脆直接保存到时候安装好后替换安装好后的data;
现在开始进行配置:(不要用绿色版)
同时部署两台mysql数据库 mysql-8.0.23-winx64
(一)解压后的分别放入如下目录
分别配置 my.ini 主库
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\\\\tool\\\\mysql\\\\master
# 设置mysql数据库的数据的存放目录
datadir=D:\\\\tool\\\\mysql\\\\master\\\\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#主库和从库需要不一致
server-id=1
log-bin=mysql-bin
#同步的数据库
binlog-do-db=test
#不需要同步的数据库
binlog-ignore-db=mysql
从库:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3307
# 设置mysql的安装目录
basedir=D:\\\\tool\\\\mysql\\\\slave
# 设置mysql数据库的数据的存放目录
datadir=D:\\\\tool\\\\mysql\\\\slave\\\\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#主库和从库需要不一致
server-id=2
log-bin=mysql-bin
#同步的数据库
binlog-do-db=test
#不需要同步的数据库
binlog-ignore-db=mysql
(二)分别到数据库安装目录的bin下初始化数据库
mysqld --initialize --user=mysql --console
(三)4.安装MySQL服务,以管理员身份运行cmd到解压后的bin目录下,并输入mysqld install MySQL --defaults-file=“F:\\mysql-8.0.15-winx64\\bin\\my.ini”,其中的路径为你正式的ini文件。
(四)运行cmd,输入net start mysql启动MySQL服务,再输入mysql -u root -p,然后输入临时密码,要想使用mysql 必须重新修改密码mysql8以下的使用set password = password(‘新密码’); mysql8以上的使用 ALTER USER “root”@“localhost” IDENTIFIED BY “你的新密码”;
注意的地方是:
同样配置从数据库:.编写my.ini 配置文件并且放到从数据库解压的目录下注:(端口号,server-id,mysql安装目录,数据存放目录和主数据库不一致)
成功后连接:
(五)配置:
在主库3306:
查看show master status; 这些是可用于从库配置
从库按顺序执行下面
stop slave;
#这些值在主库执行show master status 可以发现
change master to
master_host='127.0.0.1',
master_port=3306,
master_user='root',
master_password='1234',
master_log_file='mysql-bin.000005',
master_log_pos=1072;
show slave status;
start slave;
show slave status;
#slave_io_starte 变为 Waiting for master to send event 配置成功
测试:在之前配置需要同步的数据库下建表,导入数据
CREATE TABLE `t_sys_dic_type` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`code` varchar(32) NOT NULL DEFAULT '',
`name` varchar(64) NOT NULL DEFAULT '',
`status` int(4) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
KEY `code_index` (`code`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
导入
INSERT INTO t_sys_dic_type
VALUES (‘1’, ‘goodCategory’, ‘物品分类’, ‘1’);
INSERT INTO t_sys_dic_type
VALUES (‘2’, ‘express’, ‘快递’, ‘1’);
这里出现问题是:
mysql主从设置运行成功,但是丛库没有同步数据过来,哪里出了问题?
以上是关于mysql日志主从复制的主要内容,如果未能解决你的问题,请参考以下文章