`

linux mysql 自动备份与恢复数据

阅读更多
  mysql备份一般有两种,一种是mysqlhotcopy,另一种是直接使用mysqldump。两种都是在线执行LOCK TABLES 以及 UNLOCK TABLES,简单说就是热备份,在锁定数据库的情况下进行备份,这样不会让数据出现紊乱。在这里讨论第二种。
  1.linux的自动备份就得用到sh脚本。以下是脚本内容:
#vi backupmydb.sh
#2014-10-13 joker
#!/bin/bash
#2014-10-13 joker
user=222
passwd="2222"
databak_dir=/usr/backup #备份的目录

DATE=`date +%Y%m%d`
logFile=$databak_dir/logs/mysql$DATE.log
database=mydb
eMailFile=$databak_dir/email.txt

echo "     " > $eMailFile
echo "---------------------------------" >> $eMailFile
echo $(date +"%y-%m-%d %H:%M:%S") >> $eMailFile

dumpFile=$databak_dir/$database$(date +"%Y%m%d" --date="-1 day").sql

GZDumpFile=$database$(date +"%Y%m%d" --date="-1 day").tar.gz
options="-u$user -p$passwd --opt $database"
mysqldump $options > $dumpFile  #导出数据文件
if [[ $? == 0 ]]; then
  cd $databak_dir
  tar cvzf $GZDumpFile $dumpFile >> $eMailFile 2>&1

# scp -r $GZDumpFile 地址:/xxx   #传送备份文件到另一台计算机,需要做好ssh信任

# rm -f $dumpFile           #删除备份的文件

else

  echo "DataBase Backup Fail!" >> $emailFile

fi
echo "--------------------------------------------------------" >> $logFile
cat $eMailFile >> $logFile

<!---华丽丽分割线-----!>
2.保存退出以后给予权限:chmod X backupmydb.sh
3.添加定时任务 使用linux自带的crond。
#vi /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name command to be executed
30 04 * * * root /usr/backup/backupmydb.sh
最后一行就是你要添加的定时任务。其中前面30 04表示每天4:30分执行一次此任务,后面的则是sh脚本的绝对地址。
4.重启crond:service crond restart
5.数据恢复。
mysql -u用户名 -p 数据库名 < 数据库名.sql
然后输入数据库密码就OK了。
6.如果是tar格式的则是:
1).tar -xzvf mydb.tar
2).创建新的数据库
3).拷贝数据库到mysql目录下:cp * /var/lib/mysql/mydb/
4).权限设置
将拷贝过去的文件的属主改为mysql:mysql,权限改为700
chown mysql:mysql /var/lib/mysql/mydb/*
chmod 700 /var/lib/mysql/mydb/*
5)收工。

分享到:
评论

相关推荐

    多备份企业文件云备份软件 v2.2.12.0030.zip

    10、智能的增量备份恢复功能,能够恢复出与每次执行时源目录完全一样的目录结构和文件。 11、异地容灾备份功能:文件一旦备份,可以在任何一台电脑上进行文件恢复,数据永不丢失。 12、支持在任务执行后发送执行...

    Linux下mysql异地自动备份的方法

    基本上不管是对于我们自己使用,还是给客户部署服务器,,mysql备份都是必不可少的一部分,这里给大家分享一下我是如何实现linux上做异地自动备份的。 mysql_backup.sh 用于备份数据 mysql_restore.sh 用于恢复...

    多备份-企业级文件云备份软件 v2.2.12.0030.exe

    10、智能的增量备份恢复功能,能够恢复出与每次执行时源目录完全一样的目录结构和文件。 11、异地容灾备份功能:文件一旦备份,可以在任何一台电脑上进行文件恢复,数据永不丢失。 12、支持在任务执行后发送执行...

    睿备份 v4.2.5.zip

    跨平台支持本地/远程/FTP文件、MSSQL、ORACLE、MySQL、PostgreSQL、达梦等数据库完全、增量、事务日志备份与恢复。 只需一机安装,即可管理无限台计算机的数据库/文件备份;类Windows计划任务模式的备份任务设置,...

    MySql 5.1 参考手册.chm

    5.9.2. 示例用备份与恢复策略 5.9.3. 自动恢复 5.9.4. 表维护和崩溃恢复 5.9.5. myisamchk:MyISAM表维护实用工具 5.9.6. 建立表维护计划 5.9.7. 获取关于表的信息 5.10. MySQL本地化和国际应用 5.10.1. 数据和排序...

    企业级文件云备份软件-多备份windows客户端

     10、智能的增量备份恢复功能,能够恢复出与每次执行时源目录完全一样的目录结构和文件。  11、异地容灾备份功能:文件一旦备份,可以在任何一台电脑上进行文件恢复,数据永不丢失。  12、支持在任务执行后发送...

    MySQL 5.1参考手册

    5.9.2. 示例用备份与恢复策略 5.9.3. 自动恢复 5.9.4. 表维护和崩溃恢复 5.9.5. myisamchk:MyISAM表维护实用工具 5.9.6. 建立表维护计划 5.9.7. 获取关于表的信息 5.10. MySQL本地化和国际应用 5.10.1. 数据...

    MySQL 5.1中文手冊

    5.9.2. 示例用备份与恢复策略 5.9.3. 自动恢复 5.9.4. 表维护和崩溃恢复 5.9.5. myisamchk:MyISAM表维护实用工具 5.9.6. 建立表维护计划 5.9.7. 获取关于表的信息 5.10. MySQL本地化和国际应用 5.10.1. 数据和排序...

    MYSQL

    4.13 OS/2 注意事项 4.14 TcX 二进制代码 4.15 安装后期(post-installation)的设置与测试 4.15.1 运行mysql_install_db 的问题 4.15.2 启动 MySQL 服务器的问题 4.15.3 自动启动和停止 ...

    MySQL 5.1官方简体中文参考手册

    5.9.2. 示例用备份与恢复策略 5.9.3. 自动恢复 5.9.4. 表维护和崩溃恢复 5.9.5. myisamchk:MyISAM表维护实用工具 5.9.6. 建立表维护计划 5.9.7. 获取关于表的信息 5.10. MySQL本地化和国际应用 5.10.1. 数据和排序...

    MySQL管理之道 性能调优、高可用与监控.part2.rar

    性能调优、高可用与监控》由资深mysql专家撰写,以最新的mysql版本为基础,以构建高性能mysql服务器为核心,从故障诊断、表设计、sql优化、性能参数调优、mydumper逻辑、xtrabackup热备份与恢复、mysql高可用集群...

    MySQL 5.1参考手册中文版

    5.9.2. 示例用备份与恢复策略 5.9.3. 自动恢复 5.9.4. 表维护和崩溃恢复 5.9.5. myisamchk:MyISAM表维护实用工具 5.9.6. 建立表维护计划 5.9.7. 获取关于表的信息 5.10. MySQL本地化和国际应用 5.10.1. 数据...

    MySQL 5.1参考手册 (中文版)

    5.9.2. 示例用备份与恢复策略 5.9.3. 自动恢复 5.9.4. 表维护和崩溃恢复 5.9.5. myisamchk:MyISAM表维护实用工具 5.9.6. 建立表维护计划 5.9.7. 获取关于表的信息 5.10. MySQL本地化和国际应用 5.10.1. 数据和排序...

    2017最新老男孩MySQL高级专业DBA实战课程全套【清晰不加密】,看完教程月入40万没毛病

    第五部 MySQL备份、增量备份及数据恢复基础实战(12节) 01-备份数据的意义及重要性.avi 02-mysqldump多个命令参数备份实战.avi 03-mysqldump逻辑备份的工作原理.avi 04-备份多个库的思想及多种方法讲解.avi 05-...

    mysql5.1中文手册

    示例用备份与恢复策略 5.9.3. 自动恢复 5.9.4. 表维护和崩溃恢复 5.9.5. myisamchk:MyISAM表维护实用工具 5.9.6. 建立表维护计划 5.9.7. 获取关于表的信息 5.10. MySQL本地化和国际应用 ...

    mysql-workbench-community-6.0.7-win32-noinstall

    开发人员和 DBA 可以使用这些可视化工具配置服务器、管理用户、执行备份和恢复、检查审计数据以及查看数据库运行状况。 了解更多信息 » 新增!数据库迁移 MySQL Workbench 现在为将 Microsoft SQL Server、Sybase ...

    MySQL中文参考手册.chm

    4.13 OS/2 注意事项 4.14 TcX 二进制代码 4.15 安装后期(post-installation)的设置与测试 4.15.1 运行mysql_install_db 的问题 4.15.2 启动 MySQL 服务器的问题 4.15.3 自动启动和停止...

    MySQL中文参考手册

    + 4.15.3 自动启动和停止 MySQL + 4.15.4 选项文件 o 4.16 升级和降级(downgrading)时有什么特别要做的事情吗? + 4.16.1 从一个 3.22 版本升级到 3.23 + 4.16.2 从一个 3.21 版本升级到 3.22 + 4.16.3 从...

Global site tag (gtag.js) - Google Analytics