DB 从关闭数据库 看看你在那个LEVEL

关闭数据库,呵呵,看上去没有什么可以说的,或者说没有什么技术含量,属于只要脖子上有一双带眼睛的脑袋就可以进行操作. 事实是这样的吗?  关闭数据库看似简单的事情也能给评出个  3 6 9 等的LEVEL.

什么LEVEL 从关闭数据库中体现你对整体数据库系统操作和认知的LEVEL

到底有没有这么复杂,我们来看一看.

1  关闭数据库前第一级LEVEL ,首先你要知道你的数据库是什么架构,这里的架构指的是你的数据库的高可用以及复制的架构. 你的数据库无论是 ORACLE , SQL SERVER,  PG, MYSQL,  MONGODB , REDIS, 他们都有不同的架构, RAC ,DG, AWO , REPMGR,  PATRONI,  SQL SERVER CLUSTER,  MYSQL INNODB CLUSTER, MGR  ,MHA   ,Sentinel, REDIS , MONGO REPLICATION  ,MONGODB SHARDING ,你看我不费劲就能说出这么多架构, 那你的数据库到底是那种架构,上面还有中间件的,那话题就更多了. 所以不清楚你的数据库在使用了那种高可用架构, 中间件, 以及中间件的原理的情况下,关闭数据库和自杀没有什么区别, 连 LEVEL 1 这一级都过不了关.

2 关闭数据库前第二级LEVEL 2,数据库的简单原理,为什么关闭数据库的时候,使用了关闭命令他就是不关闭,在哪里慢慢悠悠的,就是和你作对, 你一生气,直接关机,心想行了把, 在开启后发现数据库启动不了,或者数据库失联了,所以懂得一些基本的数据库原理是你过第二关的基本选择项. 比如什么是事务, 什么是 REDO 什么是 UNDO  什么是ACID ,什么是回滚, 这些不理解的情况下,把数据库当做静态的非数据库产品, 或者数据库关闭的命令给你提供好几种,到底你要用那种,这些都不知道的情况下 LEVEL 2 FAILED

3  关闭数据库前,第三级LEVEL 3, 你对你数据库上承载的业务属性以及数据库在此业务中的地位,是否了解, 如果你简单的说一句,嗯关闭了业务就无法进行了,那就还达不到这个LEVEL 的级别, 首先你的知道你整体项目中的数据流在你数据库的体现, 例如程序在接到数据后是直接写入REDIS 然后在处理后,放入你的MYSQL 还是,数据先进入你的MYSQL ,在提取出来到 REDIS 进行数据处理,这是不同的,那个先应该被关闭,那个必须在那个数据库关闭后,在关闭,这些都是和业务逻辑在整体架构中的实现所决定的,所以关闭一个数据库这些不清楚 LEVEL 3  LOST.

4  关闭数据库的第四级 ,LEVEL 4  ,就是在业务层来看你的数据库的关闭对整体公司的业务的影响,是白天就可以做,还是必须要晚上做,是需要通知业务部门还是自己就能决定了, 还是我们要进行7*24 利用某项技术,让数据库灰度的进行看似不停机的维护和关闭STEP BY STEP,此乃关闭数据库的第四级.

说到这里,你还觉得关闭数据库是一件很容易的事情吗? 老司机最讨厌听到的就是数据库要关闭,因为他具有这很多的不可能, 和可能,具体是什么, 你踩过几次坑,受到几次教育,就知道关闭数据库并没有那么简单.

本文分享自微信公众号 - AustinDatabases(AustinDatabases)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )