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

失手删表删库,赶紧跑路?!

d8bd396750aa54dc11e789db90ae6f80.gif

 在数据资源日益宝贵的数字时代

公司最怕什么?

85ebf795d5c3422a263ffadf2629a1b3.png

人还在,库没了

ceb11585b2eae5d5dda53c158a2306cf.png

是粮库、车库,还是小金库?

38e6eb601f649d26b27b0ce46c54e7db.png

实际上,

这里的“库”

是指的数据库

6d7b966ad8d0cb7cf606d3227b36b149.png

Ta是公司各类信息的保险柜

小到企业官网和客户信息

大到金融机构的资产数据和国家秘密

4e1303dfb7b952958f725d45a00327d9.png

即便没有跟数据库产生直接交集

Ta也在背后默默支持我们的工作与生活

255dff4d0cd22f5ec4d70adc02cea654.png

比如网上“剁手”、取钱、数据查询......

一转身,

就能看到Ta辛勤搬砖的身影

这年头,

谁还没个愿意为自己付出的“人”呢?

062231e9e2c04f7367884af83967d046.png

而数据库中存储的各种表格数据

则是公司业务得以正常运营的基础

表没,钱没~

4fe109711a34759d8cce8ea69264b8c8.png

作为公司业务运营的核心支撑

数据库的管理当然要专人专职

这时候

DBA闪亮登场了

9aaa43db88d668fb8a6ef47494e0fd97.png

看似平平无奇的他们

除了会挑选七彩斑斓的格子衬衫外

还掌握着公司正常运转的命门

ac91694a769069d84c98098d088a11b1.png

毕业就加入公司的小王

从懵懂的技术小白成长为资深DBA王工

看着日渐稀疏的头发,小王觉得这一切值得

作为资深的DBA

小王知道“删表跑路”不是网络段子

此类事件屡见不鲜

2002983fe370bd9bd04cef4d747c6571.jpeg

公司失去的是数据资产

而他们失去的则是人身自由

今天,是小王被女神拒绝的101次

领导老张还叨叨小王最近胖了秃了

378fe35d72e8c711ccfb70d4e3adfcd1.png

双重打击让心不在焉的小王烦躁不安

伴随着鼠标的“咔嗒”一声

b11bd81be3eb1a63b858d19a9cbd93c8.png

安静的研发中心突然炸开了锅

c932319bb5b6c8b6d1f29119be6bb639.jpeg

惊恐声把小王的魂叫了回来

原来是不小心把公司的业务表误删了

常在河边走,这次湿了鞋了!

a671945861d79630a25e1842335f7687.jpeg

小王设想了无数种逃亡方案

想到今后越来越有“判头”的日子

小王瑟瑟发抖

看着濒临窒息的小王,

老张于心不忍地说道:

043d55266921da1397180c2d6a51a7b5.png

看着一顿猛操作的老张,

平时的絮絮叨叨不见踪影,

只剩下光环了~

看着眼里只满是崇拜的小王

老张“好为人师”的心瘾开始作祟

老张告诉小王,在金仓数据库中,虽然也可以通过分析日志来确定表的删除时间,并恢复数据。

但此类方案的处理时间通常较长(整库的不完全恢复所涉及的数据量太大,在恢复数据并导出后,还需再进行一次数据库的完全恢复,并合并被删除的数据,因此耗时较长)。对于线上业务,过长的停机时间不仅会给企业带来严重的经济损失,而且会产生负面的社会影响,降低企业信誉。

金仓数据库KingbaseES为解决这一难题,实现了数据库闪回功能,可将表删除的恢复时间由数小时缩短至分钟级。

在金仓数据库KingbaseES中使用闪回功能,只需要在kingbase.conf配置一个参数即可。

c6571f91d9c1e93777794b700be28c84.png

紧接着,老张给小王做了一个演示,以备不时之需。

他先创建两个表,并插入测试数据。

853c3bd71f931fe3ab35818a5e6a6e6d.png

然后删除t_user表,并在t_goods表中继续插入数据。

96662070d55fe96e35afc9f97861449e.png

金仓数据库KingbaseES提供了一个视图,可以查询出表的删除信息。

77288d9478dc14ad7b8b17b7a14d4877.png

如果我们需要了解表的精确删除时间,可以直接查询recyclebin视图,快速得到表的精确删除时间。

相比其它数据库数据库的日志分析确定表删除时间并进行不完全恢复的方法,这简直太便捷了,然而更方便的还在后面。

7553278925ec1db74dd1bbfec3a55b16.png

通过闪回(flashback)这一特性,恢复被删除的表,根本无需了解表的精确删除时间,只需要在命令中指定before drop关键字即可。而且,不同于使用基于时间点的不完全恢复,使用flashback只恢复了这个被删除的表及其数据,对于在删除表之后进行的业务操作,则完全不受闪回操作的影响。

老张一脸得意的说完后,喝了一口他的陈年老茶

看着惊魂未定的小王,

他知道小王从今往后对他只有:

1eef3b4515ce8ce561e5c6086b656c81.png

历经此事,小王悟出了一个道理:

爱情只是生活的调味品,

倘若删了库表,他失去的则是自由

这天,学习完金仓数据库的小王精神抖擞地去了健身房

dbdd2355f2035d59d9a3553d1f71235f.png

小王明白了:

作为资深的DBA,

不仅要技术好,还要体能好

他要开始练习跑步,

以备不时之需强身健体,

用好的体魄,迎接工作中的各种挑战。

最后,

真诚奉劝广大DBA们,

凡事莫冲动,删库跑路一时爽,入狱坐牢好凄凉。

3d6399d2d03a34211578dbada49986b3.png

供稿:战略市场部 / 产品管理部

编辑:糖酥

校对:日尧

b7f4fd5c4acde0c519d33b259781bcda.gif

相关文章:

失手删表删库,赶紧跑路?!

在数据资源日益宝贵的数字时代公司最怕什么?人还在,库没了是粮库、车库,还是小金库?实际上,这里的“库”是指的数据库Ta是公司各类信息的保险柜小到企业官网和客户信息大到金融机构的资产数据和国家秘密即便没有跟数据…...

技术树基础——16排它平方数(Bigdecimal,int,string,数组的转换)

题目:03879 * 203879 41566646641这有什么神奇呢?仔细观察,203879 是个6位数,并且它的每个数位上的数字都是不同的,并且它平方后的所有数位上都不出现组成它自身的数字。具有这样特点的6位数还有一个,请你…...

04动手实践:手把手带你实现gRPC的Hello World

这篇文章就从实践的角度出发,带大家一起体验一下gRPC的Hello World。文中的代码将全部使用Go语言实现,使用到的示例也是GitHub上提供的grpc-go,下面我们开始: Hello World官方示例 首先我们要clone GitHub上gRPC的源代码到我们本地 git clone https://github.com/grpc/g…...

区块链技术与应用1——BTC-密码学原理

文章目录比特币中的密码学原理1. 哈希函数2. 数字签名3. 比特币中的哈希函数和数字签名简单介绍:比特币与以太坊都是以区块链技术为基础的两种加密货币,因为他们应用最广泛,所以讲区块链技术一般就讲比特币和以太坊。比特币中的密码学原理 1…...

PyTorch学习笔记:data.WeightedRandomSampler——数据权重概率采样

PyTorch学习笔记:data.WeightedRandomSampler——数据权重概率采样 torch.utils.data.WeightedRandomSampler(weights, num_samples, replacementTrue, generatorNone)功能:按给定的权重(概率)[p0,p1,…,pn−1][p_0,p_1,\dots,p_{n-1}][p0​,p1​,…,pn…...

SpringMVC对请求参数的处理

如何获取SpringMVC中请求中的信息 ? 默认情况下,可以直接在方法的参数中填写跟请求参数一样的名称,此时会默认接受参 数 ,如果有值,直接赋值,如果没有,那么直接给空值 。Controller RequestMapp…...

12年老外贸的经验分享

回想这12年的经历,很庆幸自己的三观一直是正确的,就是买家第一不管什么原因,只要你想退货,我都可以接受退款。不能退给上级供应商,我就自己留着,就是为了避免因为这个拒收而失去买家。不管是什么质量原因&a…...

电子电路中的各种接地(接地保护与GND)

前言多年以前,雷雨天气下,建筑会遭遇雷击,从而破坏建筑以及伤害建筑内的人,为了避免雷击的伤害,人们发明了避雷针,并将避雷针接地线,从而引导雷击产生的电流经过地线流入到地下。地线&#xff1…...

php实现农历公历日期的相互转换

农历(Lunar calendar)和公历(Gregorian calendar)是两种不同的日历系统。公历是基于太阳和地球的运动来计算时间的,而农历是基于月亮的运动来计算时间的。农历中的月份是根据月亮的相对位置来确定的,而公历…...

基于SpringBoot的房屋租赁管理系统的设计与实现

基于SpringBoot的房屋租赁管理系统的设计与实现 1 绪论 1.1 课题来源 随着社会的不断发展以及大家生活水平的提高,越来越多的年轻人选择在大城市发展。在大城市发展就意味着要在外面有一处安身的地方。在租房的过程中,大家也面临着各种各样的问题&…...

一文带你为PySide6编译MySQL插件驱动

1.概述 最近使用PySide6开发程序,涉及与MySQL的数据交互。但是qt官方自pyqt5.12(记不太清了)以后不再提供MySQL的插件驱动,只能自己根据qt的源码编译。不过网上大部分都是qt5的MySQL驱动的编译教程。后来搜到了一个qt6的编译教程…...

图论算法:树上倍增法解决LCA问题

文章目录树上倍增法: LCA问题树上倍增法: LCA问题 树上倍增法用于求解LCA问题是一种非常有效的方法。 倍增是什么? 简单来说,倍增就是 1 2 4 8 16 … 2^k 可以发现倍增是呈 2的指数型递增的一类数据,和二分一样&…...

Java线程池中submit() 和 execute()方法有什么区别

点个关注&#xff0c;必回关 文章目录一. execute和submit的区别与联系1、测试代码的整体框架如下&#xff1a;2、首先研究Future<?> submit(Runnable task)和void execute(Runnable command)&#xff0c;3、submit(Runnable task, T result) 方法可以使submit执行完Run…...

Vue.extend和VueComponent的关系源码解析

目录 0.概念解释 前言 需求分析 Vue.extend 编程式的使用组件 源码分析 0.概念解释 Vue.extend和VueComponent是Vuejs框架中创建组件的两种不同方式。Vue.extend方法能够让你根据Vue对象&#xff08;继承&#xff09;来定义一个新的可重用的组件构造器。而VueComponent方…...

【动态规划】01背包问题(滚动数组 + 手画图解)

01背包除了可以用形象的二维动态数组表示外&#xff0c;还可以使用空间复杂度更低的一维滚动数组。 目录 文章目录 前言 一、滚动数组的基本理解 二、确定dp及其下标含义 三、确定递推公式 四、确定初始化 五、确定遍历顺序 1.用物品&#xff08;正序&#xff09;遍历背…...

javaEE 初阶 — 超时重传机制

文章目录超时重传机制1. 数据重复传输问题2. 如何解决数据重复传输问题3. 重传次数问题TCP 的工作机制&#xff1a;确认应答机制 超时重传机制 如果传输数据的时候丢包了该怎么办&#xff1f; 利用 超时重传&#xff0c;也就是超过了一定的时间&#xff0c;如果还没响应就重新…...

小米5x wlan无法打开解决

诱因&#xff1a;想要利用空置设备做节点服务器或者边缘计算&#xff0c;因此解锁并刷了magisk&#xff0c;印象中在刷之前wlan已经无法打开无法进行wifi联网 表现&#xff1a; 1 WLAN开关无法打开&#xff0c;或者虚假打开&#xff0c;无法扫描wifi 2 设置->我的设备->全…...

负载均衡之最小活跃数算法

文章目录[toc]一、概念二、场景与设计思路三、实现四、代码下载一、概念 活跃数 集群中各实例未处理的请求数。 最小活跃数 集群中各个实例&#xff0c;哪个实例未处理的请求数据最小&#xff0c;就称之为最小活跃数。 二、场景与设计思路 场景 以获取微服务地址为场景。 设计…...

JavaScript 评测代码运行速度的几种方法

一、使用 performance.now() API 在 JavaScript 中&#xff0c;可以使用 performance.now() API 来评测代码的运行速度。该 API 返回当前页面的高精度时间戳&#xff0c;您可以在代码执行前后调用它来计算代码执行所需的时间。 例如&#xff1a; let t0 performance.now();…...

Linux 编译器 gcc/g++

本文已收录至《Linux知识与编程》专栏&#xff01; 作者&#xff1a;ARMCSKGT 演示环境&#xff1a;CentOS 7 目录 前言 正文 gcc/g常用命令 自定义可执行程序名命令-o 预处理指令-E 编译指令-S 汇编指令-c 链接指令gcc 命令巧记口诀 链接库 动态库-动态链接 静态库…...

浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)

✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义&#xff08;Task Definition&…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

IT供电系统绝缘监测及故障定位解决方案

随着新能源的快速发展&#xff0c;光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域&#xff0c;IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选&#xff0c;但在长期运行中&#xff0c;例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)

在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马&#xff08;服务器方面的&#xff09;的原理&#xff0c;连接&#xff0c;以及各种木马及连接工具的分享 文件木马&#xff1a;https://w…...

永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器

一、原理介绍 传统滑模观测器采用如下结构&#xff1a; 传统SMO中LPF会带来相位延迟和幅值衰减&#xff0c;并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF)&#xff0c;可以去除高次谐波&#xff0c;并且不用相位补偿就可以获得一个误差较小的转子位…...

LCTF液晶可调谐滤波器在多光谱相机捕捉无人机目标检测中的作用

中达瑞和自2005年成立以来&#xff0c;一直在光谱成像领域深度钻研和发展&#xff0c;始终致力于研发高性能、高可靠性的光谱成像相机&#xff0c;为科研院校提供更优的产品和服务。在《低空背景下无人机目标的光谱特征研究及目标检测应用》这篇论文中提到中达瑞和 LCTF 作为多…...

32单片机——基本定时器

STM32F103有众多的定时器&#xff0c;其中包括2个基本定时器&#xff08;TIM6和TIM7&#xff09;、4个通用定时器&#xff08;TIM2~TIM5&#xff09;、2个高级控制定时器&#xff08;TIM1和TIM8&#xff09;&#xff0c;这些定时器彼此完全独立&#xff0c;不共享任何资源 1、定…...

Java 与 MySQL 性能优化:MySQL 慢 SQL 诊断与分析方法详解

文章目录 一、开启慢查询日志&#xff0c;定位耗时SQL1.1 查看慢查询日志是否开启1.2 临时开启慢查询日志1.3 永久开启慢查询日志1.4 分析慢查询日志 二、使用EXPLAIN分析SQL执行计划2.1 EXPLAIN的基本使用2.2 EXPLAIN分析案例2.3 根据EXPLAIN结果优化SQL 三、使用SHOW PROFILE…...

医疗AI模型可解释性编程研究:基于SHAP、LIME与Anchor

1 医疗树模型与可解释人工智能基础 医疗领域的人工智能应用正迅速从理论研究转向临床实践,在这一过程中,模型可解释性已成为确保AI系统被医疗专业人员接受和信任的关键因素。基于树模型的集成算法(如RandomForest、XGBoost、LightGBM)因其卓越的预测性能和相对良好的解释性…...