數據的安全性是重中之重,通過騰訊云的 [coscmd](https://cloud.tencent.com/document/product/436/10976) 自動備份數據庫到云存儲。
**注意** :這個腳本是運行在物理機上的,請注意相關路徑。
### 安裝pip
首先更新包索引
```
sudo apt update
```
為Python3及其所有依賴項安裝pip
```
sudo apt install python3-pip
```
### 安裝coscmd
通過 pip3 安裝
```
pip3 install coscmd
```
根據實際情況修改配置文件 ~/.cos.conf
```
[common]
secret_id = AKIDA6wUmImTMzvXZNbGLCgtusZ2E8mG****
secret_key = TghWBCyf5LIyTcXCoBdw1oRpytWk****
bucket = configure-bucket-1250000000
region = ap-chengdu
max_thread = 5
part_size = 1
retry = 5
timeout = 60
schema = https
verify = md5
anonymous = False
```
### 備份腳本
復制備份腳本
```
cp /root/ctc-docker/backup.sh.sample /root/ctc-docker/backup.sh
```
增加執行權限
```
chmod +x /root/ctc-docker/backup.sh
```
根據實際情況修改配置項
```
#mysql項目數據庫名稱
MYSQL_DATABASE=ctc
#mysql項目數據庫用戶
MYSQL_USER=ctc
#mysql項目數據庫密碼
MYSQL_PASSWORD=1qaz2wsx3edc
#備份保留天數
KEEP_DAYS=15
#coscmd命令路徑(絕對路徑)
COS_CMD=/usr/local/bin/coscmd
#COS配置文件路徑(絕對路徑)
COS_CONF_PATH=/root/.cos.conf
#本地目錄(絕對路徑,末尾帶"/")
LOCAL_DIR=/root/ctc-docker/mysql/data/backup/
#遠程目錄(絕對路徑,末尾帶"/")
REMOTE_DIR=/backup/database/
```
### 計劃任務
添加計劃任務
```
crontab -e
```
計劃任務內容
```
0 3 * * * /usr/bin/bash /root/ctc-docker/backup.sh > /dev/null 2>&1 &
```