年末年始のタイミングを利用してサラリーで管理しているサーバー類の小変更。
なんだかMattermostがmariadbサポートしなくなったみたいなので、
MYSQLに入れ替え&ついでにサーバーも引っ越しに伴い
CRONでバックアップする事にしてテスト環境で試した。
広告
Mattermost バックアップスクリプト
基本的に以前Nextcloud用で作ったバックアップと一緒。
Nextcloud の バックアップスクリプト AWS S3版
今回もAWSのS3にバックアップ。
今回ちょっと違うのはコマンド実行したら
mysqldump: [Warning] Using a password on the command line interface can be insecure.
となったので、内容を少し変更。
ようはパスワードはちゃんと隠せよ って事のようです。
バックアップ用
# nano awsbackup.sh
#!/bin/sh
DST="root/data-bk"
DBHOST='localhost'
DBNAME='mattermost'
DATETIME=`date +%Y%m%d`
DELDATA=`date -d -7day +%Y%m%d`
mkdir /${DST}/${DATETIME}
mkdir /${DST}/${DATETIME}/mattermost
rsync -Aax /opt/mattermost/ /${DST}/${DATETIME}/mattermost
SQL="mysqldump --defaults-extra-file=dbaccess.cnf -h $DBHOST --no-tablespaces $DBNAME | gzip > /$DST/$DATETIME/bksql.dump.gz"
eval $SQL
tar zcf /${DST}/${DATETIME}-bkup.tar.gz -C / ${DST}/${DATETIME}
chmod 664 /${DST}/${DATETIME}-bkup.tar.gz
aws s3 cp /${DST}/${DATETIME}-bkup.tar.gz s3://{バケット名}/${DATETIME}-bkup.tar.gz
aws s3 rm s3://{バケット名}/${DELDATA}-bkup.tar.gz
rm -r /${DST}/${DATETIME}
rm /${DST}/${DATETIME}-bkup.tar.gz
MySQL情報用
ここでは『dbaccess.cnf』というfile名で作ってます。
# nano dbaccess.cnf [client] user = DBユーザー名 password = DBパスワード
そしたらパーミッション変更
# chmod 400 dbaccess.cnf
これでバックアップshの
SQL="mysqldump --defaults-extra-file=dbaccess.cnf -h $DBHOST --no-tablespaces $DBNAME | gzip > /$DST/$DATETIME/bksql.dump.gz"
が正しければ動くはず。
ではでは
おすすめのコンテンツ
広告
