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

更多相关设置:比如设置binglog的日志格式:

https://blog.csdn.net/weixin_39958366/article/details/113597939?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2aggregatepagefirst_rank_ecpm_v1~rank_v31_ecpm-1-113597939.pc_agg_new_rank&utm_term=mysql%E8%AE%BE%E7%BD%AEbinlog%E6%97%A5%E5%BF%97%E6%A0%BC%E5%BC%8F&spm=1000.2123.3001.4430

(二)分别到数据库安装目录的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’);

成功后连接:测试如下
3307从库:
在这里插入图片描述
在3306主库插入后
在这里插入图片描述
刷新看3307如下:
在这里插入图片描述
同时这里可以看到3307的binlog 插入记录
在这里插入图片描述
同时在中转站中继日志中可以发现
在这里插入图片描述

出现问题是:
mysql主从设置运行成功,但是丛库没有同步数据过来,哪里出了问题?
在这里插入图片描述
参数说明:

https://blog.csdn.net/xc_gxf/article/details/8432158

错误检查
1、检查主库bin-log日志是否开启 这里是开启了
在这里插入图片描述
2、查看从库 .err文件
在这里插入图片描述
发现报错的信息是:
在这里插入图片描述
我这里是自己删除了中继日志 relay 他说它找不到因此报错

https://blog.csdn.net/weixin_42456278/article/details/115964459

3错误:
我遇到了个莫名奇妙的错误后来配置了下面好了实现了:之前一直过来不了

#设置日志格式
binlog_format = mixed
#设置binlog清理时间
expire_logs_days = 7
#binlog每个日志文件大小
max_binlog_size = 100m
#binlog缓存大小
binlog_cache_size = 4m
#最大binlog缓存大小
max_binlog_cache_size = 512m

最后附上binlog日志相关操作;便于查看

只查看第一个binlog文件的内容
show binlog events;
查看指定binlog文件的内容
show binlog events in ‘mysql-bin.000002’;
查看当前正在写入的binlog文件
show master status\G
获取binlog文件列表
show binary logs;
中继日志相关
show variables like ‘%relay%’;
show RELAYLOG events in ‘MS-SRCWYUJDOIVC-relay-bin.000006’;

https://www.cnblogs.com/softidea/p/12624778.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

健身小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值