抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

mysqldump 可以把整个数据库装载到一个单独的文本文件中。这个文件包含有所有重建您的数据库所需的 SQL 命令。这个命令取得所有的模式并将其转换成 DDL 语法,取得所有数据,并从这些数据中创建 INSERT 语句。这个工具将您的数据库中所有的设计倒转。因为所有的东西都被包含到了一个文本文件中。这个文本文件可用一个简单的批处理和一个合适 SQL 语句导回到 MySQL。

需求背景

杜老师说的评论数据存放于 MySQL 数据库,为保证服务持久性,故需独立部署。单独使用云主机太浪费,云数据库成本又高,所以杜老师选择临时的 MySQL 数据库。

但是无法保障该数据库的安全性,所以需要使用定期备份,以确保评论不丢失。

备份命令

命令格式,其中的大写处为自定义:

1
mysqldump -hHOSTNAME -uUSERNAME -pPASSWORD DATABASE > /PATH/FILENAME.sql

命令解释:

命令解释
mysqldump备份命令
-hHOSTNAME指定数据库的访问地址
-uUSERNAME指定数据库的访问用户
-pPASSWORD数据库用户的密码
DATABASE需备份的数据库名
>将生成的数据写入文件
/PATH/FILENAME.sql备份文件路径

备份脚本

按照日期生成备份文件,脚本内容参考如下:

1
2
#!/bin/bash
mysqldump -hHOSTNAME -uUSERNAME -pPASSWORD DATABASE > /PATH/FILENAME_`date +'%Y%m%d'`.sql

如需定时执行,先执行 crontab -e,然后添加如下内容:

1
0 0 * * * /PATH/mysqldump.sh

写在最后

如提示 mysqldump 命令没有找到,则运行下面的命令安装:

1
2
apt -y install mysql-client # for Debian or Ubuntu
yum -y install mariadb-client # for CentOS or Red Hat Enterprise Linux

如提示文件无权限,则运行下面的命令安装:

1
chmod +x /PATH/mysqldump.sh

评论