首页 > 数据库 > mysql教程 > linux服务器中备份还原MYSQL数据库

linux服务器中备份还原MYSQL数据库

WBOY
发布: 2016-06-07 17:53:06
原创
945 人浏览过

本文章整理了一些常用的linux服务器中备份还原MYSQL数据库命令代码,有需要学习了解的朋友可参考参考。

1.备份MYSQL:

把一个库导出到一个SQL文件

 代码如下 复制代码
db_name > /home/hx/backup/name.sql -uroot -p

备份多个库(使用-B参数)

 代码如下 复制代码
mysqldump -B db1 db2 > /path/name.sql -u root -p

备份全部库

 代码如下 复制代码
mysqldump --all-databases > /path/name.sql -u root -p

备份某库一个表

 代码如下 复制代码
mysqldump db1 tb1 > /path/name.sql

备份某库多个表

 代码如下 复制代码

mysqldump db1 tb1 tb2 > /path/name.sql

产生某库某表的结构

 代码如下 复制代码
mysqldump -d db1 users > users.structure

产生某库某表的内容

 代码如下 复制代码
mysqldump -t db1 users > users.data

2.恢复数据

有两种方式:
第一种:

 代码如下 复制代码

mysql db_name 第二种:
mysql -u root -p
use db_name
source /path/backup-file.sql

3.Linux下的压缩,将生成的sql备

份文件打包一下。
zip xxx.zip xxx.sql
tar -czf xxx.rar xxx.sql
tar的解压是x,打包是c。

4.上传下载备份,我用的是SecureCRT。
下载到本地,sz 目录/文件名
上传到服务器,rz
rz -r 续传
rz -y 覆盖已有文件


上面都是需要手动的,下面我来介绍一个自动备份mysql

MYSQL定期备份是一项重要的工作,但人工操作太繁琐,也难避免有所疏漏,使用下面的方法即可让系统定期备份数据。

1、创建备份文件夹

 代码如下 复制代码

#cd /www
#makedir backup

2、编写运行脚本

 代码如下 复制代码

#vi autobackup

写入以下内容:

 代码如下 复制代码

filename=`date +%Y%m%d`
mysql_bin_dir/mysqldump –opt dataname -u user -ppass | gzip > /www/mysqlbackup/name$filename.gz

保存退出

说明:

(1)mysql_bin_dir:mysql的bin路径;

(2)dataname:名;

(3)user:数据库用户名;

(4)password:用户密码;

(5)name:自定义备份文件前缀标识。

如上例,将自动备份mysql数据库,并以gzip压缩方式存储,文件名为name20080101.gz的形式。

3、为脚本添加执行权限

#chmod +x autobackup

4、让crontab来完成定期执行的任务

这一步中,Redhat的方法会不一样,后面专门给出。

编辑crontab:

 代码如下 复制代码

#vi /etc/crontab

在最后一行中加入:

 代码如下 复制代码

01 5 * * * root /www/autobackup

每天5点运行脚本,也可以修改5为其他指定时间。

Redhat方法:

Redhat的crontab采用按时间调用4个目录(/etc/cron.hourly:每小时;/etc/cron.daily:每天;/etc/cron.weekly:每周;/etc/cron.monthly:每月)中脚本出来运行的方式。

Redhat中只需要将刚才编辑的脚本复制到相应的目录即可。

5、重启crontab

 代码如下 复制代码

#/etc/rc.d/init.d/crond restart

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板