12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- #!/bin/bash
- #### Remove WP Site
- #### v3 删除该临时站点资源并将其备份到指定目录,定期删除
- #### Author: chenpeiqing
- #### Date: 2024-12-05
- #### Usage: sh remove-and-bak-wpsite.sh [SITE_CODE]
- #### 示例: sh remove-and-bak-wpsite.sh 2408210vakv9
- SITE_CODE=$1
- # 定义要检查的目录路径
- DIR_TO_CHECK="/usr/local/wwwroot/$SITE_CODE"
- # 定义目标目录路径
- TARGET_DIR="/opt/adweb3/wp_bak/"
- # 定义数据库连接信息
- RDS_HOST='127.0.0.1'
- RDS_ADMIN='root'
- RDS_PWD='Initial0_123'
- # 检查目录是否存在
- if [ -d "$DIR_TO_CHECK" ]; then
- #############
- ## 备份代码 ##
- ############
- # 目录存在,执行移动操作
- sudo mv "$DIR_TO_CHECK" "$TARGET_DIR"
- # 检查移动操作是否成功
- if [ $? -eq 0 ]; then
- echo "Directory has been moved to $TARGET_DIR."
- else
- echo "Failed to move the directory."
- fi
- #############
- # 备份数据库 #
- ############
- mysqldump --user=$RDS_ADMIN --password=$RDS_PWD --host=localhost --port=3306 --no-create-db --default-character-set=utf8 $SITE_CODE > $TARGET_DIR$SITE_CODE.sql
- # 检查 MySQL 命令是否成功执行
- if [ $? -eq 0 ]; then
- echo "Database $SITE_CODE has been backup."
- else
- echo "Failed to backup database $SITE_CODE."
- fi
- #############
- # 删除数据库 #
- ############
- mysql -u $RDS_ADMIN -p$RDS_PWD -e "DROP DATABASE $SITE_CODE;"
- # 检查 MySQL 命令是否成功执行
- if [ $? -eq 0 ]; then
- echo "Database $SITE_CODE has been deleted."
- else
- echo "Failed to delete database $SITE_CODE."
- fi
- # 删除nginx 配置文件 #
- sudo rm -f /usr/local/openresty/nginx/vhost/$SITE_CODE.conf
- # 删除nginx 站点日志文件 #
- sudo rm -f /usr/local/openresty/nginx/logs/$SITE_CODE.error.log
- sudo rm -f /usr/local/openresty/nginx/logs/$SITE_CODE.access.log
- echo "reload nginx config"
- /usr/local/openresty/nginx/sbin/nginx -s reload
- echo "reload nginx config done!"
- else
- # 删除nginx 配置文件 #
- sudo rm -f /usr/local/openresty/nginx/vhost/$SITE_CODE.conf
- # 删除nginx 站点日志文件 #
- sudo rm -f /usr/local/openresty/nginx/logs/$SITE_CODE.error.log
- sudo rm -f /usr/local/openresty/nginx/logs/$SITE_CODE.access.log
- echo "remove nginx $SITE_CODE config and log file"
- # 目录不存在,输出指定内容
- echo "The specified directory does not exist."
- fi
|