mysql8.0多库备份与还原脚本
时间: 2023-10-04 19:07:13 浏览: 181
linux运维学习笔记:Mysql备份与恢复.pdf
以下是 MySQL 8.0 多库备份和还原的脚本示例:
备份脚本:
```
#!/bin/bash
# MySQL backup script
# MySQL credentials
user="username"
password="password"
host="localhost"
port="3306"
# Other options
backup_path="/path/to/backup/folder"
date=$(date +"%d-%b-%Y")
# Backup filename
filename="mysql_backup_$date.sql"
# Backup command
mysqldump -u $user -p$password --host=$host --port=$port --all-databases > $backup_path/$filename
# Compression command
gzip $backup_path/$filename
# Remove uncompressed file
rm -f $backup_path/$filename
```
在备份脚本中,您需要将 `username`、`password`、`host` 和 `port` 替换为您的 MySQL 访问凭据。`backup_path` 变量指定备份文件应该存储在哪个文件夹中,`date` 变量用于生成备份文件名。
在备份期间,使用 `mysqldump` 命令备份所有数据库,并将其保存到指定的文件夹中。然后,使用 `gzip` 命令将备份文件压缩为 `.gz` 文件。最后,删除原始文件。
还原脚本:
```
#!/bin/bash
# MySQL restore script
# MySQL credentials
user="username"
password="password"
host="localhost"
port="3306"
# Other options
backup_path="/path/to/backup/folder"
filename="mysql_backup_$date.sql.gz"
# Restore command
gunzip < $backup_path/$filename | mysql -u $user -p$password --host=$host --port=$port
```
在还原脚本中,您需要使用与备份脚本相同的 `username`、`password`、`host` 和 `port` 值。`backup_path` 变量应该与备份脚本中的相同。`filename` 变量包含备份文件名,它必须与备份脚本中的相同。
还原期间,使用 `gunzip` 命令解压缩备份文件并将其传递给 `mysql` 命令,将数据还原到 MySQL 中。请注意,此脚本假定备份文件是 `.gz` 压缩文件。如果备份文件没有压缩,请删除 `gunzip` 命令并将备份文件传递给 `mysql` 命令。如果备份文件是其他压缩格式,请使用适当的解压缩命令。
阅读全文