返回

在Linux服务器上,每天晚上12点,自动备份数据库,并且通过阿里oss API上传到OSS进行备份

开发配置

一个简单的shell脚本,需要根据的数据库类型和配置进行相应的修改。

脚本内容

#!/bin/bash

# 设置数据库用户名和密码
DB_USER="your_db_username"
DB_PASS="your_db_password"
DB_NAME="your_db_dbname"

# 设置阿里云OSS的AccessKey和SecretKey
OSS_ACCESS_KEY="your_oss_access_key"
OSS_SECRET_KEY="your_oss_secret_key"

# 设置阿里云OSS的Bucket名称和Endpoint
OSS_BUCKET="your_oss_bucket_name"
OSS_ENDPOINT="your_oss_endpoint"

# 设置备份文件的存储路径
BACKUP_PATH="/path/to/backup/folder"

# 获取当前日期
DATE=$(date +%Y-%m-%d)

# 备份数据库
mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_PATH/db_backup_$DATE.sql

# 上传备份文件到阿里云OSS
ossutil64 cp $BACKUP_PATH/db_backup_$DATE.sql oss://$OSS_BUCKET/db_backup_$DATE.sql --access-key-id=$OSS_ACCESS_KEY --access-key-secret=$OSS_SECRET_KEY --endpoint=$OSS_ENDPOINT

创建定时任务

可以将此脚本保存为一个文件,例如db_backup.sh,并使用chmod +x db_backup.sh命令使其可执行。然后,使用crontab -e命令编辑crontab文件,并添加以下内容来安排每天晚上12点执行此脚本:

0 0 * * * /path/to/db_backup.sh

请注意,需要根据的实际情况修改上述脚本中的变量值,并确保已安装mysqldumpossutil64工具。

安装mysqldumpossutil64

在Ubuntu服务器上,您可以使用apt-get命令安装mysqldump工具。首先,您需要使用以下命令更新软件包列表:

sudo apt-get update

然后,您可以使用以下命令安装mysql-client软件包,其中包含mysqldump工具:

sudo apt-get install mysql-client

至于ossutil64工具,您可以从阿里云官网下载并安装。首先,您需要使用以下命令下载最新版本的ossutil64

wget http://gosspublic.alicdn.com/ossutil/1.7.1/ossutil64

然后,您可以使用以下命令将其移动到/usr/local/bin目录下,并使其可执行:

sudo mv ossutil64 /usr/local/bin/
sudo chmod +x /usr/local/bin/ossutil64

安装完成后,您可以使用ossutil64 --version命令检查是否安装成功。