• 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一下

  • 相关阅读:
    11.22
    python之字典(dict)
    Version Control
    java_实现一个类只能声明一个对象
    javase-位运算符
    javase-整数变量的交换
    URI和URL的关系与区别
    http解析
    函数式语言
    MyIASM和Innodb引擎详解
  • 原文地址:https://www.cnblogs.com/missmeng/p/15010593.html
Copyright © 2020-2023  润新知