实时数据同步工具<Maxwell入门简介及原理解析、安装部署>

时间:2025-03-26 18:00:13

3.3 MySQL环境准备
1)修改mysql的配置文件,开启binlog设置

[root@bigdata01 /]# vim /usr/[mysqld]模块下添加一下内容
[mysqld]
server_id=1
log-bin=mysql-bin
binlog_format=row
#binlog-do-db=test_maxwell

重启MySQL服务
[root@bigdata01 /]# service mysql restart

登录mysql并查看是否修改完成
[root@bigdata01 /]# mysql -uroot -p123456

mysql> show variables like '%binlog%';
当有下列属性时表示开启成功
| binlog_format                           | ROW                  |

2)进入/var/lib/mysql目录下,查看MySQL是否生成的binlog文件
当出现下面两个文件时就表示

[root@bigdata01 /]# cd var/lib/mysql/
[root@bigdata01 mysql]# ll
-rw-rw----. 1 mysql mysql      154 Oct  1 10:53 mysql-bin.000001
-rw-rw----. 1 mysql mysql       19 Oct  1 22:03 

注意:

MySQL 生成的 binlog 文件初始大小一定是 154 字节,然后前缀是 log-bin 参数配
置的,后缀是默认从.000001,然后依次递增。除了 binlog 文件文件以外,MySQL 还会额外
生产一个.index 索引文件用来记录当前使用的 binlog 文件。

3) 初始化Maxwell元数据库
(1)再MySQL中创建一个数据库maxwell,用于存储Maxwell的元数据信息

	[root@bigdata01 mysql]# mysql -uroot -p123456
	
	create database maxwell;

(2) MySQL5.7一下忽略此步骤,因为再mysql.5.7以及之后的版本中默认密码最少为八位,因此如果我们使用的话许需要修改用户密码的安全级别

set global validate_password_length=4;
set global validate_password_policy=0;

(3)为Maxwell库创建一个用户,并将maxwell的所有权限都交给该用户

 grant all on maxwell.* TO 'maxwell'@'%' identified by '123456';

(4) 为用户maxwell分配监控其他数据库的权限(只读权限)

grant  select , replication slave , replication client on *.* to maxwell@'%'; 

(5)刷新mysql表权限

 flush privileges