centos7中mysql自动备份
时间: 2024-01-15 21:19:27 浏览: 80
以下是在CentOS 7中实现MySQL自动备份的步骤:
1. 创建备份文件夹:
```shell
mkdir /home/mysql/backup
```
2. 创建备份脚本:
```shell
vi zenithstar_backup.sh
```
在脚本中添加以下内容:
```shell
#!/bin/bash
# 备份数据库名称
DB_NAME="zenith_star"
# 备份文件夹路径
BACKUP_DIR="/home/mysql/backup"
# 备份文件的格式
BACKUP_FILE="${DB_NAME}_$(date +%Y-%m-%d-%H-%M-%S).sql"
# 备份命令
mysqldump -u 用户名 -p 密码 ${DB_NAME} > ${BACKUP_DIR}/${BACKUP_FILE}
# 清理过期备份文件
find ${BACKUP_DIR} -type f -name "${DB_NAME}_*.sql" -mtime +30 -exec rm {} \;
```
保存并退出脚本。
3. 设置定时任务:
```shell
crontab -e
```
在打开的文件中添加以下内容,表示每天凌晨1点1分执行备份脚本:
```shell
1 1 * * * /bin/bash /path/to/zenithstar_backup.sh
```
保存并退出文件。
现在,MySQL自动备份已经设置完成。每天凌晨1点1分,脚本将会执行备份操作,并保留最近30天的备份文件。
相关问题
centos 定时备份mysql
在CentOS上定时备份MySQL可以使用crontab来实现。下面是一个简单的步骤:
1. 创建一个备份脚本:首先,创建一个脚本文件,用于备份MySQL数据库。可以使用以下命令创建一个名为`backup_mysql.sh`的文件,并将其保存在合适的位置(例如`/home/user/backup_mysql.sh`):
```bash
#!/bin/bash
# 定义备份目录和文件名
backup_dir="/path/to/backup"
backup_file="mysql_backup_$(date +%Y%m%d%H%M%S).sql"
# 执行备份命令
mysqldump -u <username> -p<password> --all-databases > "$backup_dir/$backup_file"
```
请将`<username>`和`<password>`替换为您的MySQL用户名和密码。
2. 赋予脚本执行权限:使用以下命令为脚本文件赋予执行权限:
```bash
chmod +x /home/user/backup_mysql.sh
```
请将`/home/user/backup_mysql.sh`替换为您实际的脚本文件路径。
3. 设置定时任务:使用crontab来设置定时任务,以便自动执行备份脚本。运行以下命令编辑crontab配置:
```bash
crontab -e
```
在打开的编辑器中,添加以下行来设置每天凌晨3点执行备份任务:
```
0 3 * * * /home/user/backup_mysql.sh
```
请将`/home/user/backup_mysql.sh`替换为您实际的脚本文件路径。
4. 保存并退出编辑器:保存并退出编辑器。
现在,每天凌晨3点,MySQL数据库将自动备份到指定的目录中。
mysql5.7 自动备份_MySQL 5.7 CentOS 7.4 每天备份一次和恢复
要在MySQL 5.7上设置自动备份和恢复,可以采用以下步骤:
1. 安装需要的软件包
在CentOS 7.4上,可以使用以下命令安装MySQL客户端和服务器包:
```
sudo yum install mysql-server mysql-client
```
2. 创建备份文件夹
在Linux系统上,一般使用`/var/lib/mysql`作为MySQL数据存储目录。为了备份方便,可以在该目录下创建一个备份文件夹,例如:
```
sudo mkdir /var/lib/mysql-backup
```
3. 编写备份脚本
在备份文件夹中创建一个备份脚本,例如`backup.sh`。可以使用以下命令将MySQL数据备份到备份文件夹中:
```
#!/bin/bash
mysqldump -u [用户名] -p[密码] [数据库名] > /var/lib/mysql-backup/backup.sql
```
需要将`[用户名]`、`[密码]`和`[数据库名]`替换为实际的MySQL用户名、密码和数据库名。如果要备份多个数据库,可以使用`--databases`选项,例如:
```
#!/bin/bash
mysqldump -u [用户名] -p[密码] --databases [数据库名1] [数据库名2] > /var/lib/mysql-backup/backup.sql
```
4. 设置定时任务
在Linux系统上,可以使用`crontab`命令设置定时任务。例如,要在每天凌晨2点备份MySQL数据,可以使用以下命令:
```
sudo crontab -e
```
然后在打开的文本编辑器中添加以下内容:
```
0 2 * * * /bin/bash /var/lib/mysql-backup/backup.sh
```
这表示在每天凌晨2点执行`/var/lib/mysql-backup/backup.sh`脚本。
5. 恢复数据
要恢复MySQL数据,可以使用以下命令:
```
mysql -u [用户名] -p[密码] [数据库名] < /var/lib/mysql-backup/backup.sql
```
需要将`[用户名]`、`[密码]`和`[数据库名]`替换为实际的MySQL用户名、密码和数据库名。如果备份文件中包含多个数据库,需要在命令中指定要恢复的数据库。
阅读全文