Linux上使用MySQL的Binary Log(实践篇)(图文详解)

本文详细介绍了如何在Linux环境下安装MySQL,并配置其二进制日志为ROW格式,包括安装过程、开启二进制日志、设置唯一server-id、重启MySQL验证配置等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、安装mysql并启动mysql

(参照菜鸟教程:http://www.runoob.com/mysql/mysql-install.html)

# 安装MySQL
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum update
yum install mysql-server
# 初始化MySQL
mysqld --initialize
# 启动MySQL
systemctl start mysqld
# 查看MySQL运行状态
systemctl status mysqld

在初始化时如果遇到问题mysql不支持root用户的问题,要新创一个用户(如:mysql_user)。

2、开启二进制日志并设置为ROW格式

修改/etc/my.cnf文件,在文件中的[mysqld]下加上:

server-id = 1 (在整个Mysql集群中保证唯一)
log-bin = binlog 
log-bin-index = binlog.index
binlog_format=ROW

建议row格式直接在这里设置,不要去在MySQL运行时“set global binlog_format=ROW”,因为这样你一重启MySQL就恢复成STATEMENT格式了。
这里可能会遇到权限问题,要切换回root用户才能修改。

3、重启mysql并查看是否成功开启

  • 重启mysql
    systemctl restart mysqld
  • 进入mysql后查看是否成功开启
    show variables like ‘log_bin’;

在这里插入图片描述

4、查看二进制日志文件

/var/lib/mysql文件夹内:二进制日志索引文件binlog.index、二进制日志文件binlog.000001
在这里插入图片描述

注意: MySQL运行时通过“set global XXX=XX”设置mysql的全局变量,你一重启mysql,那个全局变量就恢复默认值了。而且重启mysql后,若数据库有更改,则会开始继续记录二进制日志,这时候会根据现在设定的binlog格式记录,就算我们中途改成了其他格式,也没办法更改。所以建议把相关变量在/etc/my.cnf中提前设置好。

(正在学习中,未完待更。。。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值