当前位置:首页 > 科技  > 软件

避免删库跑路的办法,你知道吗?

来源: 责编: 时间:2024-06-07 17:19:50 448观看
导读你好,我是悟空。图片一、前言1.1 删库跑路是什么?删库跑路:是一个在开发和运维领域常见的幽默说法,但它指的是一种严重的故障情境:意外删除了生产数据库中的数据。在实际操作中,这种情况可能会导致严重的数据丢失和业务中断

你好,我是悟空。50I28资讯网——每日最新资讯28at.com

图片图片50I28资讯网——每日最新资讯28at.com

一、前言

1.1 删库跑路是什么?

删库跑路:是一个在开发和运维领域常见的幽默说法,但它指的是一种严重的故障情境:意外删除了生产数据库中的数据。50I28资讯网——每日最新资讯28at.com

在实际操作中,这种情况可能会导致严重的数据丢失和业务中断。50I28资讯网——每日最新资讯28at.com

1.2 避免删除跑路的方式

权限控制: 限制对生产环境的直接访问和操作,确保只有受信任的人员才能执行敏感操作。50I28资讯网——每日最新资讯28at.com

日志审计: 记录所有操作,包括谁、什么时间、做了什么操作,以便追踪和审计。50I28资讯网——每日最新资讯28at.com

备份策略: 实施完善的备份策略,定期备份数据,并将备份数据存储在安全的地方,以便在出现问题时能够快速恢复数据。50I28资讯网——每日最新资讯28at.com

多地备份: 将备份数据存储在不同的地理位置,以防止因某一地点发生灾难而导致数据丢失。50I28资讯网——每日最新资讯28at.com

权限分离: 采用最小权限原则,给予员工仅限于其工作职责所需的最低权限,避免滥用权限。50I28资讯网——每日最新资讯28at.com

监控预警: 部署监控系统,监视系统状态和用户行为,及时发现异常操作并采取措施。50I28资讯网——每日最新资讯28at.com

培训意识: 对员工进行安全意识培训,让他们了解删除跑路的危害,以及如何正确处理数据和执行操作。50I28资讯网——每日最新资讯28at.com

而最最最重要的一种方式就是备份!50I28资讯网——每日最新资讯28at.com

重要的事情说三遍:备份!备份!备份!50I28资讯网——每日最新资讯28at.com

为什么说备份是最重要的,因为只要有备份文件,数据就能恢复。但前提是备份文件别被删了!50I28资讯网——每日最新资讯28at.com

那么今天我们就来看下如何备份数据库以及重要的文件。50I28资讯网——每日最新资讯28at.com

二、环境说明

本篇涉及到的服务器环境如下表所示:50I28资讯网——每日最新资讯28at.com

序号
50I28资讯网——每日最新资讯28at.com

说明
50I28资讯网——每日最新资讯28at.com

说明
50I28资讯网——每日最新资讯28at.com

1
50I28资讯网——每日最新资讯28at.com

Ubuntu 系统
50I28资讯网——每日最新资讯28at.com

服务器操作系统50I28资讯网——每日最新资讯28at.com

2
50I28资讯网——每日最新资讯28at.com

Docker 容器
50I28资讯网——每日最新资讯28at.com

容器
50I28资讯网——每日最新资讯28at.com

3
50I28资讯网——每日最新资讯28at.com

MySQL 数据库
50I28资讯网——每日最新资讯28at.com

备份数据库,以容器化部署
50I28资讯网——每日最新资讯28at.com

4
50I28资讯网——每日最新资讯28at.com

FastDFS 文件存储或 Redis 数据文件
50I28资讯网——每日最新资讯28at.com

备份磁盘文件
50I28资讯网——每日最新资讯28at.com

5
50I28资讯网——每日最新资讯28at.com

expect 工具
50I28资讯网——每日最新资讯28at.com

自动化交互式任务的工具
50I28资讯网——每日最新资讯28at.com

Ubuntu 上安装有 Docker,MySQL 以容器化的形式部署,FastDFS 分布式文件系统,expect 自动化交互式任务的工具(可以用来远程拷贝,但功能不仅仅如此),可自行安装该工具。50I28资讯网——每日最新资讯28at.com

三、备份方案

3.1 备份 MySQL 数据库的所有数据

  • 使用 mysqldump 命令备份所有数据,并生成一个 SQL 文件。
  • 使用 tar 命令将 SQL 文件压缩成一个文件。
  • 使用 openssl 加密压缩文件。
  • 删除过期数据
  • 使用 scp 或 rsync 命令将加密文件上传到远程服务器进行异地存储。

图片图片50I28资讯网——每日最新资讯28at.com

3.2 备份数据文件

  • 压缩和加密文件
  • 拆分成分卷文件
  • 合并分卷文件
  • 远程备份
  • 删除过期数据

图片图片50I28资讯网——每日最新资讯28at.com

四、自动化定期备份

当我们编写好备份的脚本后,还需要定期执行备份操作,那么就少不了添加定时任务了。50I28资讯网——每日最新资讯28at.com

Linux 系统自带定时任务功能,我们可以指定一个 cron 作业,在每天凌晨 2 点 10 分运行该备份脚本,并将输出追加到 /home/passjava/backup/cron_log.txt 文件中。50I28资讯网——每日最新资讯28at.com

步骤如下:50I28资讯网——每日最新资讯28at.com

编辑定时任务50I28资讯网——每日最新资讯28at.com

crontab -uroot -e

添加定时任务50I28资讯网——每日最新资讯28at.com

10 2 * * * bash /home/passjava/backup/你的脚本 >> /home/passjava/backup/cron_log.txt

五、备份脚本

5.1 数据库备份脚本

#!/bin/bash# 设置mysql的登录用户名和密码(根据实际情况填写)mysql_user="root"mysql_password="xxx"mysql_host="数据库服务器 ip"mysql_port="3306"#mysql_charset="utf8mb4" # 备份文件存放地址(根据实际情况填写)backup_locatinotallow=/home/passjava/backup/mysql/passjava_web # 是否删除过期数据expire_backup_delete="ON"expire_days=7backup_time=`date +%Y-%m-%d-%H-%M-%S`#根据docker ps获取mysql容器的IDmysqlCnotallow=`sudo docker ps -q --filter="name=mysql"`#在运行在docker环境的mysql中执行备份命令sudo docker exec $mysqlContainerName mysqldump passjava_web -u$mysql_user -p$mysql_password > $backup_location/$backup_time-backup-mysql-passjava_web.sqltar -czvf - $backup_location/$backup_time-backup-mysql-passjava_web.sql | openssl des3 -salt -k passjava123456 -out $backup_location/$backup_time-backup-mysql-passjava_web.sql.tar.gz# 删除过期数据if [ "$expire_backup_delete" == "ON" -a  "$backup_location" != "" ];then        `find $backup_location/ -type f -mtime +$expire_days | xargs rm -rf`        echo "Expired backup data delete complete!"fiecho "开始远程备份 passjava_web"expect -c "    spawn scp -r /home/passjava/backup/mysql/passjava_web/$backup_time-backup-mysql-passjava_web.sql.tar.gz passjava@异地服务器1:/home/passjava/backup/mysql/passjava_web    expect {        /"*assword/" {set timeout 300; send /"passjava/r/"; exp_continue;}        /"yes/no/" {send /"yes/r/";}    } spawn scp -r /home/passjava/backup/mysql/passjava_web/$backup_time-backup-mysql-passjava_web.sql.tar.gz passjava@异地服务器2:/home/passjava/backup/mysql/passjava_web    expect {        /"*assword/" {set timeout 300; send /"passjava/r/"; exp_continue;}        /"yes/no/" {send /"yes/r/";}    }expect eof"echo "完成远程备份 passjava_web"rm -f $backup_location/$backup_time-backup-mysql-passjava_web.sql

5.2 文件备份脚本

本脚本用于备份 FastDFS 分布式文件系统的文件,也可以改为备份 redis 的数据文件。50I28资讯网——每日最新资讯28at.com

#!/bin/bash # 备份文件存放地址(根据实际情况填写)backup_locatinotallow=/home/passjava/backup/fdfs/data # 是否删除过期数据expire_backup_delete="ON"expire_days=7backup_time=`date +%Y-%m-%d-%H-%M-%S`# 压缩加密数据库备份文件tar -czvf - /home/passjava/fdfs | openssl des3 -salt -k passjava123456 | split -b 200m -d - $backup_location/$backup_time-fdfs-data.tar.gz# 删除过期数据if [ "$expire_backup_delete" == "ON" -a  "$backup_location" != "" ];then        `find $backup_location/ -type f -mtime +$expire_days | xargs rm -rf`        echo "Expired backup data delete complete!"ficat $backup_location/$backup_time-fdfs-data.tar.gz* > $backup_location/$backup_time-fdfs-data-all.tar.gzecho "开始远程备份 fdfs"expect -c "    spawn scp -r $backup_location/$backup_time-fdfs-data-all.tar.gz passjava@192.168.1.100:/home/passjava/backup/fdfs/data    expect {        /"*assword/" {set timeout 300; send /"passjava/r/"; exp_continue;}        /"yes/no/" {send /"yes/r/";}    }expect eof"echo "完成远程备份 fdfs"rm -f $backup_location/$backup_time-fdfs-data.tar.gz*

六、总结

删库跑路是指某人恶意删除重要数据后逃避责任的行为,可能导致严重的经济损失和安全风险。50I28资讯网——每日最新资讯28at.com

为了避免此类情况,需要实施权限管理、定期备份数据,并建立自动化的备份脚本,以确保数据安全和系统稳定运行。50I28资讯网——每日最新资讯28at.com

本篇主要讲解了如何备份数据库和重要的文件,希望能带给你启发。50I28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-92745-0.html避免删库跑路的办法,你知道吗?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Oxlint 会取代 Eslint 吗?

下一篇: 大厂真实案例,CPU 升高问题如何排查?五分钟掌握

标签:
  • 热门焦点
  • 2023 年的 Node.js 生态系统

    随着技术的不断演进和创新,Node.js 在 2023 年达到了一个新的高度。Node.js 拥有一个庞大的生态系统,可以帮助开发人员更快地实现复杂的应用。本文就来看看 Node.js 最新的生
  • 一文看懂为苹果Vision Pro开发应用程序

    译者 | 布加迪审校 | 重楼苹果的Vision Pro是一款混合现实(MR)头戴设备。Vision Pro结合了虚拟现实(VR)和增强现实(AR)的沉浸感。其高分辨率显示屏、先进的传感器和强大的处理能力
  • 量化指标是与非:挽救被量化指标扼杀的技术团队

    作者 | 刘新翠整理 | 徐杰承本文整理自快狗打车技术总监刘新翠在WOT2023大会上的主题分享,更多精彩内容及现场PPT,请关注51CTO技术栈公众号,发消息【WOT2023PPT】即可直接领取
  • 之家push系统迭代之路

    前言在这个信息爆炸的互联网时代,能够及时准确获取信息是当今社会要解决的关键问题之一。随着之家用户体量和内容规模的不断增大,传统的靠"主动拉"获取信息的方式已不能满足用
  • 自动化在DevOps中的力量:简化软件开发和交付

    自动化在DevOps中扮演着重要角色,它提升了DevOps的效能。通过自动化工具和方法,DevOps团队可以实现以下目标:消除手动和重复性任务。简化流程。在整个软件开发生命周期中实现更
  • 10天营收超1亿美元,《星铁》比《原神》差在哪?

    来源:伯虎财经作者:陈平安即便你没玩过《原神》,你一定听说过的它的大名。恨它的人把《原神》开服那天称作是中国游戏史上最黑暗的一天,有粉丝因为索尼在PS平台上线《原神》,怒而
  • 机构称Q2国内智能手机销量同比下滑4% vivo份额重回第1

    7月29日消息,根据市场调查机构Counterpoint Research公布的最新报告,2023年第2季度中国智能手机销量同比下降4%,创新自2014年以来第2季度销量新低。报
  • 2299元起!iQOO Pad明晚首销:性能最强天玑平板

    5月23日,iQOO如期举行了新品发布会,除了首发安卓最强旗舰处理器的iQOO Neo8系列新机外,还在发布会上推出了旗下首款平板电脑——iQOO Pad,其最大的卖点
  • 北京:科技教育体验基地开始登记

      北京“科技馆之城”科技教育体验基地登记和认证工作日前启动。首批北京科技教育体验基地拟于2023年全国科普日期间挂牌,后续还将开展常态化登记。  北京科技教育体验基
Top