zoukankan      html  css  js  c++  java
  • MySQL 8.0在Windows上如何备份

            现在用MySQL的人非常多,大多数人只是使用数据库,很少涉及数据库的备份。

            但是在系统部署中,用到MySQL的人肯定避免不了数据库的数据备份。网上的资料大部分都是Linux系统上MySQL的备份资料,Windows系统上的备份资料较少,即使有,也是说明的很简单,而且很多给定的脚本也不能使用,下面我就数据库的全量备份和增量备份介绍一下。

            备份的时候,第一次肯定需要做一次基础备份,然后再此基础上执行增量备份。

            全量备份的例子如下:

    @echo off
    set hour=%time:~0,2%
    if "%time:~0,1%"==" " set hour=0%time:~1,1%
    set now=%Date:~0,4%%Date:~5,2%%Date:~8,2%%hour%%Time:~3,2%%Time:~6,2%
    echo %now%
    set host=127.0.0.1
    set port=3306
    set user=root
    set pass=123456
    set dbname=huali-ticket-server
    set backupfile=D:ackup	estvr\%dbname%-all-%now%.sql
    ::下面的mysqldump的路径需要是执行脚本的系统上的全路径, "C:Program FilesMySQLMySQL Server 8.0inmysqldump" -h%host% -P%port% -u%user% -p%pass% -c --add-drop-table %dbname% > %backupfile% echo delete files before 10 days forfiles /p D:ackup estvr /s /m *.sql /d -10 /c "cmd /c del @file /f"

      增量备份的例子如下,增量备份只是把binlog文件备份下来即可:

    @echo off
    
    ::服务器数据库ip 用户名 密码
    set shost=127.0.0.1
    set sport=3306
    set suser=root
    set suserpwd=123456
    ::mysql 二进制日志文件存放的位置
    set filePath= "C:Program FilesMySQLMySQL Server 8.0data"
    
    
    ::当前系统日期 20160309
    set now=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%
    
    ::备份文件夹
    set backup=D:ackup	estvrdata
    if not exist %backup% md %backup%
    
    ::以日期命名的文件夹
    set nowfile=%backup%\%now%-Increase
    if not exist %nowfile% md %nowfile%
    
    ::前一次日志文件名
    set binlog=%nowfile%inlog.txt
    
    "C:Program FilesMySQLMySQL Server 8.0inmysql" -h%shost% -P%sport% -u%suser% -p%suserpwd% -e "show master status"|findstr -B binlog.>%binlog%
    
    ::处理日志文件名  只取binlog.001365 复制到目标文件夹
    for /f " " %%i in (%binlog%) do  copy %filePath%\%%i %nowfile%
    ::刷新日志产生新的日志
    "C:Program FilesMySQLMySQL Server 8.0inmysqladmin" -h%shost% -P%sport% -u%suser% -p%suserpwd% flush-logs
    

      

    至于自动备份就需要用到Windows的执行计划了,通过执行计划执行上面的脚本即可,具体资料可以在网上查询,在此就不介绍了。

    MySQL的命令可以参考博客园的如下文章但不限于:

    https://www.cnblogs.com/gcixx/p/11145473.html

  • 相关阅读:
    LeetCode:数组(三)
    LeetCode:数组(二)
    LeetCode:数组(一)
    python实现栈的基本操作
    python基本内置函数
    Pycharm的常见Debug调试方法(持续更新)
    计算广告系列(一)-基本概念整理
    es与solr对比
    数据库优化
    java线程池
  • 原文地址:https://www.cnblogs.com/zunzunQ/p/14927766.html
Copyright © 2011-2022 走看看