mysqldump 备份数据库基础指南mysqldump备份详解_sql基础教程

数据备份是一个网站能够正常运营的保障,数据备份包括网站源码备份和数据库备份,如果你使用的是ACCESS数据库,那么直接使用FTP下载数据库文件就可以了,但如果你使用了PHP+MYSQL进行网站建设,数据库备份就没有那么容易了。常见的mysql备份方法有很多种比如说:mysqldump mysqbackup cp 等等,本文主要介绍mysqldump的手动备份

mysqldump 备份数据库基础指南mysqldump备份详解

数据备份是一个网站能够正常运营的保障,数据备份包括网站源码备份和数据库备份,如果你使用的是ACCESS数据库,那么直接使用FTP下载数据库文件就可以了,但如果你使用了PHP+MYSQL进行网站建设,数据库备份就没有那么容易了。

mysqldump 备份数据库基础指南mysqldump备份详解_sql基础教程

常见的mysql备份方法有很多种比如说:mysqldump mysqbackup cp 等等,本文主要介绍mysqldump的手动备份和脚本备份。

一、mysql手动备份

mysql -u root -p  进入mysql

show database;查看需要备份的库

find / -name mysql 查看mysql的路径

rpm -ql mysql 查看mysql的安装包安装到了哪个路径

mysqldump -u root -p密码 库 >/路径/名字.sql    将库指定备份到路径下

二、mysql自动备份

#!/bin/bash
date=`date +"%Y%m%d%H%M%S"`#时间
dbname=/usr/local/src/mysql-XXdb/XXdb_$date#备份的库的路径和文件名称时间
cd /usr/local/src/mysql-XXdb#进入到备份库的路径下
mysqldump -uroot -pXXXXX XXdb >$dbname.sql#备份

If
[ "$?" == 0 ];then#这里 $? 的意思是得到上一条命令执行后的返回值,0代表成功,其他代表错误,并且将记录输出到日志里。
echo $date" mysqldump sucess " >>mysql-logfile
else
echo $date" mysqldump failed " >>mysql-logfile
fi
tar -czPf $dbname.tar.gz $dbname.sql#压缩dbname 里面的sql文件,这里如果只用-czf会报错,所以加参数-p 设置绝对路径 一般不建议使用
if
       [ "$?" == 0 ];then
       echo $date" tar sucess " >>mysql-logfile
else
       echo $date" tar dailed " >>mysql-logfile
fi
rm -rf $dbname.sql#删除dbname 里面的sql文件
find /usr/local/src/mysql-XXdb -mtime +30 -name "*.tar.gz" -exec rm -rf {} ;
#查找路径下面30天前后缀带tar.gz的所有文件并且删除

然后添加计划任务

Crontab -e
00 00 * * * /路径 #这里我设置每日凌晨启动一次脚本
Service crond reload #加载服务

当然数据只是暂时备份在本地下面,如果服务器出现灾难问题,那么数据还是会丢失。所以我们可以用异地备份将数据备份到另外的服务器上,用SCP或者rsync写crontab都是可以的,至此mysql手动备份以及脚本自动化备份完成。 

海计划公众号
(0)
上一篇 2020/04/03 19:34
下一篇 2020/04/03 19:34

您可能感兴趣的内容