当前位置: 首页 > news >正文

slpdz.wordpress.com优化用户体验

slpdz.wordpress.com,优化用户体验,网站色彩搭配案例,xiamiplayer for wordpress问题背景 公司需要在异地机房远程备份数据库,以防止数据丢失,同时要支持MySQL、MariaDB和OceanBase。由于MariaDB和OceanBase支持MySQL语法,所以可以直接用MySQL Client进行备份。 安装MySQL客户端 yum install mysql编写脚本 编写/backu…

问题背景

公司需要在异地机房远程备份数据库,以防止数据丢失,同时要支持MySQL、MariaDB和OceanBase。由于MariaDB和OceanBase支持MySQL语法,所以可以直接用MySQL Client进行备份。

安装MySQL客户端

yum install mysql

编写脚本

编写/backup/backup.sh,它的作用是执行备份到sql文件,并自动压缩成tar.gz压缩包,再删除30天前的压缩包

#!/bin/bash# 检查参数个数
if [ "$#" -lt 3 ]; thenecho "Usage: $0 <remote_user>@<server>:<port> -p <password> -d <database_name>"exit 1
fi# 解析参数
REMOTE_INFO="$1"
REMOTE_DB_PASSWORD=""
REMOTE_DB_NAME=""# 从第一个参数中提取用户名、主机和端口
IFS='@' read -ra ADDR <<< "$REMOTE_INFO"
IFS=':' read -ra USR <<< "${ADDR[1]}"
REMOTE_DB_USER=${ADDR[0]}
REMOTE_DB_HOST=${USR[0]}
REMOTE_DB_PORT=${USR[1]}# 从第二个参数中提取密码
for arg in "$@"; docase $arg in-p) shift; REMOTE_DB_PASSWORD="$1";;-d) shift; REMOTE_DB_NAME="$1";;*) shift;;esac
done
echo ----------------开始备份---------------------
echo REMOTE_DB_USER=$REMOTE_DB_USER
echo REMOTE_DB_HOST=$REMOTE_DB_HOST
echo REMOTE_DB_PORT=$REMOTE_DB_PORT
echo REMOTE_DB_PASSWORD=$REMOTE_DB_PASSWORD
echo REMOTE_DB_NAME=$REMOTE_DB_NAMEBACKUP_PATH="/backup/${REMOTE_DB_HOST}_${REMOTE_DB_PORT}_${REMOTE_DB_NAME}"
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="$BACKUP_PATH/$REMOTE_DB_NAME-$DATE.sql"
TAR_FILE="$BACKUP_FILE.tar.gz"
DAYS_TO_KEEP=30# 创建备份目录,如果不存在的话
mkdir -p $BACKUP_PATH# 远程备份命令,包含端口号
mysqldump -h $REMOTE_DB_HOST -u $REMOTE_DB_USER -p$REMOTE_DB_PASSWORD -P $REMOTE_DB_PORT $REMOTE_DB_NAME > $BACKUP_FILE# 检查备份是否成功
if [ $? -eq 0 ]; thenecho "备份成功: $BACKUP_FILE"# 压缩备份文件cd $BACKUP_PATHtar czf $TAR_FILE $REMOTE_DB_NAME-$DATE.sqlif [ $? -eq 0 ]; thenecho "压缩成功: $TAR_FILE"elseecho "压缩失败"fi# 删除原.sql文件rm -f $BACKUP_FILEif [ $? -eq 0 ]; thenecho "删除备份文件: $BACKUP_FILE"elseecho "删除备份文件失败: $BACKUP_FILE"fi# 删除旧备份文件find $BACKUP_PATH -type f -name "*.tar.gz" -mtime +$DAYS_TO_KEEP -exec rm -f {} \;if [ $? -eq 0 ]; thenecho "已自动清理 $DAYS_TO_KEEP 天前的压缩包"elseecho "清理压缩包失败"fi
elseecho "备份失败"
fi

设置定时任务

crontab -e

和vi的使用方法一样,在里面写上如下的信息即可,假设在192.168.1.10这台服务器上有个MySQL开了3306端口,并且用户名为root,密码为MyPass@w0rd,数据库为test_db,每天晚上0点准时备份,则定时任务这么写:

0 0 * * * /backup/backup.sh root@192.168.1.10:3306 -p MyPass@w0rd -d test_db >> /backup/system.log

如果要备份多个库直接写多行即可:

0 0 * * * /backup/backup.sh root@192.168.1.10:3306 -p MyPass@w0rd -d test_db >> /backup/system.log
5 0 * * * /backup/backup.sh root@192.168.1.11:3306 -p !@3QWEasd -d test_db2 >> /backup/system.log

这样系统就会在0点备份test_db库,在0点5分备份test_db2库,最后备份出来的压缩包会放在\backup\192.168.1.10_3306_test_db\\backup\192.168.1.11_3306_test_db2\下面

已知的其他问题

mysqldump不支持复杂的视图和函数备份,一般这俩也不会经常动,所以建议单独备份一下。

http://www.zhongyajixie.com/news/65961.html

相关文章:

  • 游戏公司官方网站建设方案企业专业搜索引擎优化
  • 公司网站模板源代码百度seo关键词排名
  • 深圳注册公司流程和费用谷歌seo博客
  • 江津哪里找做网站的2345导网址导航下载
  • 济南互联网网站建设价格如何进行网站性能优化
  • 科技服务公司网站模版seo排名工具提升流量
  • 苏州正规网站设计公司网络推广软件哪个好
  • 宜家供应商自己做网站供货广告投放是什么工作
  • 贵美商城网站的首页怎么做代码企业网站制作多少钱
  • 中国商标网商标查询官方网站个人怎么做推广
  • 做二手车按揭的网站seo优化首页
  • 做网站f12的用处百度热搜风云榜
  • 做网站付款会有凭证吗市场调研一般怎么做
  • 网站seo推广怎么做二十条优化措施原文
  • 石岩网站设计一个具体网站的seo优化
  • 注册个网站怎么注册多用户建站平台
  • 政府网站内容改版建设建议建网站需要多少钱和什么条件
  • 重庆企业网站建设解决方案疫情最新消息今天
  • 旅游网站制作雅思培训班价格一览表
  • 康体设备网站建设成都seo优化排名公司
  • php网站建设英文文献关键词云图
  • 网站建设中 模板下载企业网站建设专业服务
  • 郴州市疫情最新规定seo技术有哪些
  • nodejs 网站开发seo广告投放是什么意思
  • 如何制作个人网站主页免费的个人网站html代码
  • 微网站用什么软件做有实力的网站排名优化软件
  • 北京网络网站建设价格低dz论坛如何seo
  • 青岛建设监理协会网站嘉兴seo报价
  • 嘉兴企业做网站seo代运营
  • 建设单位经常去哪个网站怎么关键词优化网站