登录  /  注册

mysql数据库备份的几种方法

巴扎黑
发布: 2017-07-19 11:17:43
原创
1775人浏览过
  1. 复制date文件夹备份
    ============================
    假想环境:
    mysql   安装位置:c:\mysql
    论坛数据库名称为:bbs
    数据库备份目的地:c:\db_bak\
    ============================
    新建db_bak.bat,写入以下代码


    *******************************code start*****************************
    net stop mysql
    xcopy c:\mysql\data\bbs\*.* c:\db_bak\bbs\%date:~0,10%\ /s /i
    net start mysql
    *******************************code end *****************************

       然后使用windows的“计划任务”定时执行该批处理脚本即可。(例如:每天凌晨3点执行back_db.bat)
    解释:备份和恢复的操作都比较简单,完整性比较高,控制备份周期比较灵活,例如,用%date:~0,10%。此方法适合有独立主机但对mysql没有管理经验的用户。缺点是占用空间比较多,备份期间mysql会短时间断开(例如:针对30m左右的数据库耗时5s左右),针对%date:~0,10%的用法参考           。


    2、mysqldump备份成sql文件
    ==============
    假想环境:
    mysql   安装位置:c:\mysql
    论坛数据库名称为:bbs
    mysql root   密码:123456
    数据库备份目的地:d:\db_backup\

3、利用WinRAR对MySQL数据库进行定时备份。 
对于MySQL的备份,最好的方法就是直接备份MySQL数据库的Data目录。下面提供了一个利用WinRAR来对Data目录进行定时备份的方法。

首先当然要把WinRAR安装到计算机上。

将下面的命令写入到一个文本文件里

*******************************Code Start*****************************
net stop mysql

c:\progra~1\winrar\winrar a -ag -k -r -s d:\mysql.rar d:\mysql\data

net start mysql
*******************************Code End*****************************

保存,然后将文本文件的扩展名修改成CMD。进入控制面版,打开计划任务,双击“添加计划任务”。在计划任务向导中找到刚才的CMD文件,接着为这个任务指定一个运行时间和运行时使用的账号密码就可以了。
   这种方法缺点是占用时间比较多,备份期间压缩需要时间,mysql断开比第一种方法更多的时间,但是对于文件命名很好。

最近要用到mysql备份,就写了shell脚本用于备份。

#!/bin/bash
#定义备份的数据库名称
database=***#定义备份的时间
currTime=$(date +%Y%m%d)
#备份存储目录
bakUrl=/opt/$database/db/$currTime

#备份文件名
databaseBakName=$database.$currTime.sql

#备份文件路径
databaseBakUrl=$bakUrl/$databaseBakName

#判断备份的文件夹是否存在
#这里的-d 参数判断备份存储目录是否存在  
if [ ! -d $bakUrl ]; 
then
   mkdir -p $bakUrl  
fi #这里的-f参数判断备份文件是否存在  
if [ ! -f $databaseBakUrl ]; 
then  
    mysqldump -u*** -hIP -p***  $database > $databaseBakUrlelserm -rf $databaseBakUrl
    mysqldump -u*** -hIP -p***  $database > $databaseBakUrlfi
登录后复制

给shell脚本命名为databasebak.sh

赋予脚本权限 chmod u+x databasebak.sh

以上就是mysql数据库备份的几种方法的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号