Mysql设置
-
修改/etc/my.cnf文件,开启binlog日志
vim /etc/my.cnf
添加一下配置
①server-id=1
②log-bin=mysql-bin 这个表示binlog日志的前缀是mysql-bin,以后生成的日志文件就是 mysql-bin.123456 的文件后面的数字按顺序生成,每次mysql重启或者到达单个文件大小的阈值时,新生一个文件,按顺序编号。
③binlog_format=row 这个表示binlog日志的级别为行级, binlog会记录每次操作后每行记录的变化(其他的级别有statement和mixed)。
④binlog-do-db=xxx 这个表示对哪个数据库开启binlog日志 -
重启MySQL,使配置文件生效
systemctl restart mysqld
Maxwell设置
-
初始化Maxwell元数据库
①在MySQL中建立一个maxwell库用于存储Maxwell的元数据[root@node01 ~]# mysql -uroot -p123456 mysql> CREATE DATABASE maxwell ;
②设置安全级别
mysql> set global validate_password_length=4; mysql> set global validate_password_policy=0;
③分配一个账号可以操作该数据库
mysql> GRANT ALL ON maxwell.* TO 'maxwell'@'%' IDENTIFIED BY '123456';
④分配这个账号可以监控其他数据库的权限
mysql> GRANT SELECT ,REPLICATION SLAVE , REPLICATION CLIENT ON *.* TO maxwell@'%';
-
使用Maxwell监控抓取MySQL数据
① 拷贝配置文件[root@node01 maxwell-1.25.0]# cp config.properties.example config.properties
②修改配置文件
producer=kafka kafka.bootstrap.servers=node01:9092,node01:9092,node01:9092 #需要添加 kafka_topic=kafka的主题名 # mysql login info host=node01 user=maxwell password=123456 #需要添加 后续初始化会用 client_id=maxwell_1
启动Maxwell
sh /opt/xxx/maxwell-1.25.0/bin/maxwell --config /opt/xxx/maxwell-1.25.0/config.properties >/dev/null 2>&1 &