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

备份MySql数据库Shell【Linux】

备份数据库shell

本环境 操作系统 ubuntu 数据库 Mysql
创建shell脚本,复制以下命令,修改对应的参数

# 数据库信息
DB_HOST="127.0.0.1"  #数据库服务器ip
DB_PORT="3306" # 端口
DB_USER="root" #用户名 
DB_PASS="root" #密码
DB_NAME="database_name" #数据库名
DB_DIR="/usr/local/mysql" #数据库所在目录
BACKUP_DIR="/usr/local/mysql_backup"  # 请将此路径替换为你想要备份到的指定目录

# 备份文件名,使用当前日期和时间命名
BACKUP_FILE="${BACKUP_DIR}/${DB_NAME}-$(date +%Y%m%d%H%M%S).sql"

# 确保备份目录存在
mkdir -p "${BACKUP_DIR}"

# 执行备份操作
mysqldump -h "${DB_HOST}" -P "${DB_PORT}" -u "${DB_USER}" -p"${DB_PASS}" "${DB_NAME}" > "${BACKUP_FILE}"

# 检查备份是否成功
if [ $? -eq 0 ]; then
    echo "Database ${DB_NAME} backup completed successfully to ${BACKUP_FILE}"
else
    echo "Error occurred during backup of database ${DB_NAME}"
fi

# 删除30天前的备份文件
echo "Removing old backup files older than 30 days..."
find "${BACKUP_DIR}" -type f -name "*.sql" -mtime +30 -exec rm -f {} \;
echo "Old backup files removed successfully."

相关文章:

  • matlab和FPGA联合仿真时读写.txt文件数据的方法
  • nvm安装与使用
  • 【时时三省】(C语言基础)赋值语句
  • typedef 和 using 有什么区别?
  • 前端打包优化相关 Webpack
  • 使用vue3.0+electron搭建桌面应用并打包exe
  • 互信息: 揭示变量间“心有灵犀“程度的度量器
  • 链表算法题目
  • <script setup>和export default { setup() { ... } }区别
  • Express + MongoDB 实现登录验证码
  • 如何在 JavaScript 中冻结对象:深入理解 Object.freeze() 和深冻结
  • 基于信息化技术的农业大学教师人事管理系统的构建与应用
  • C语言中的选择结构:决策的艺术
  • doris:ClickHouse
  • VAD入门(基于Python)
  • 提升数据库性能与可靠性:深入解析MySQL主从复制
  • 使用 Prim 算法生成了最小生成树, 使用 Fleury 算法生成了欧拉回路,尝试找到了一个简单的哈密尔顿圈。
  • 用友 U8出入库查询SQL 连接UNION ALL
  • 1.12.信息系统的分类【ES】
  • C#编译自动增加文件的版本号
  • 网络推广营销策划/山东网站seo
  • 合川网站建设公司/宁波网站关键词优化代码
  • 金华电子商务网站建设/四川网络推广推广机构
  • 深圳网站建设 卓/760关键词排名查询
  • 网站导航广告怎么做/宁波seo费用
  • 网站建设中敬请期待/seo搜索引擎入门教程