mysql5.7开启binlog、数据库全量备份

一、开启mysql binlog

参考文章,亲测有效 https://blog.csdn.net/king_kgh/article/details/74800513 

1.show variables like '%log_bin%';   //查看log_bin 是否开启

2.找到my.cnf配置

添加代码如下:

server-id=1  
log_bin=ON
log_bin_basename=/var/lib/mysql/mysql-bin
log_bin_index=/var/lib/mysql/mysql-bin.index

##以上三行代码可以替换成一行代码搞定
server-id=1   
log-bin=/var/lib/mysql/mysql-bin 

3.重启mysql

二、备份

全量备份

1.mkdir  /data/mysql_data  //创建备份sql目录

2.touch  sql_bak.sh  //创建shell脚本

3.chmod +x  sql_bak.sh  //添加可执行权限

4.脚本内容

#!/bin/bash
##备份sql


date=`date +%Y%m%d%H%m`
filename="mysql_${date}"
/usr/local/mysql/bin/mysqldump -uroot -p密码 -d  数据库名> /data/mysql_data/${filename}.sql
echo "备份成功"
cd /data/mysql_data
tar zcPf ${filename}.tar.gz ${filename}.sql
#rm -rf /data/mysql_data/${filename}.sql
echo  "压缩成功!"

5. ./sql_bak.sh   #执行测试 注意这里会报错 5.6之后会出现这个问题 ,导致只能到处结构无法备份数据

 mysqldump: [Warning] Using a password on the command line interface can be insecure.

6.修改上诉问题

方法一:修改mysql配置文件 :

1)vim /etc/my.cnf

2)

[mysqldump]

user=your_backup_user_name

password=your_backup_password

3)重启mysql

方法二、修改环境变量 (未测试,这个方法不用重启数据库,如果不方便重启数据库可以试试)

1).vim /etc/profile

2)末尾处添加:

export  MYSQL_PWD=root 

source一下

 

 

 

posted on 2021-07-14 14:19  大孟子  阅读(471)  评论(0编辑  收藏  举报

导航