00:00
好,那么折腾了老半天,前面这些是不是很麻烦,老费劲了,对吧,那咱们用一个什么。工具它是什么自动化?来加个粗,大家最喜欢的自动化,那么这个工具的地址在官网给到了啊,克里卡house的官网也给到我们了。啊,在数据备份最后。他给了我们一个这个开源工具。的一个地址,那点你点进来之后就进入到这个页面了,那么可以简单了解一下啊,这个东西它打了这么多个标签,我们点一下。看一下目前的一个最新版啊。我有点卡啊,其实最新版大家能看到啊。17号对吧,而且才1.0.0,那么大家网上找一些资料,他可能才到了那些,可能才0.6左右啊,咱们这边是一点,反正就下个最新的来呗。
01:01
呃,太慢了,太慢了。好,我们终于打开了,你看我们一个最新版1.0,它是6月17号对吧,6月17号,呃,也就一个月前呗。那还有很多版本会可能会用到这个对吧,你看你的需要,由于咱们现在是新版的,我是不是还还是用它比较好,那你点进来。这边它提供了几种安装方式,第一种RPM,这个是不是比较简单,还有一个套包,套包你下载完是不是要自己解压呀,对吧,那我这边给到大家的是这个RPM包,那么看我们的一个资料。这个备份工具,这个RPM包我是已经给大家下好了,那我们直接上传就行了呗,呃,那我直接上传啊c.so。呃,就放这里就好了。
02:00
就放这就行了啊。来,把它拖上来。好OK了,嗯,我这个退出先。啊,也不用把这个退了。好,这哈度唯一啊,OBD software grape,呃,这个叫什么?Back up对吧,那咱们这个包目前是上传上来了,接下来我RPM修do RPM-IV,然后呢,加上这个包名,我把它安装一下回车。安装好了。你是没有任何感觉,还没开始就已经结束了,那这边如果你想了解呢,我可以给大家看一个啊,我这边把它大包下载下来了,我主要是想看它有哪些东西啊,点开之后你发现其实就俩。就两个东西,一个是什么配置文件,一个是什么命令没了。
03:04
就没了,就这对吧,那我们用RPM方式安装,它默认在哪里呢。配置文件是在这里啊啊,我用root用户看吧来。CD ETC click house来,你看这里多了一个什么路径?Backup,也就是说RPM的方式默认是不是都在配置文件在ETC下面,对吧,好,进来。你看这里默认有一个模板文件,对吧,模板文件。不一定要打开啊,那么我们可以瞅一眼。它有什么配置啊,通用配置,还有一个什么远程的存储,它默认给的一个S3对吧,那后面两有两个参数,这个是什么。Keep保存时间嘛,Local就是本地的保存时长是周期,它这个单位是天啊,几天后删除,还有一个远程保存多久,那零什么意思啊,表示不删除啊,零表示禁用啊,这两个参数是禁用。
04:14
呃,允不允许空的备份啊,不允许对吧,这个是很简单的配置,那后面这个是咱们关注的click house,首先如果你在生产环境配置的用户名密码,你这边要指定一下,还有你想备份的主机名跟端口,主机名正常都是本机端口9000,看你有没有改。那其他的你看跳过的表,系统表我不备份啊,它不备份系统表啊,那超时时间默认是五分钟啊五分钟。呃,要不要按分区来什么freeze这个命令还记得吧,Freeze冻结呗,对吧?安全吗?安全模式吗?False,跳过验证码false。这是默认配置啊呃,那后面还跟你一个什么S3,这就是远程存储的配置啊,现在它配置还是蛮简单的,你用到S3,那你相关的S3的配置,你要告诉我什么路径啊,对吧?压缩等级,压缩格式啊,这都是S3的配置,它还列了好几个啊,还有什么FTP的SFTP的,但没有HDFS。
05:22
啊,没有HDFS,所以。还不好说能不能支持对吧,这个工具也就是说其实默认配置咱们啥也不用改了,如果是本地的话,那命令在哪里呢?CDUB,看一下啊,过滤一下click house。啊,怎么这么多啊,你还在这呢?对吧,再用了病,我们说RPM包安装方式默认的就是这么来分的,它也就这俩东西啊行,那咱们了解完之后啊,我们来试试好吧,配置文件咱们也不改了,它有几个常用命令,来我们看一眼。
06:05
Click house-backup,这是它的命令,对吧?杠加一个help车,它支持这么多啊。支持这么多,它可以加一些参数,什么杠杠tables啊,可以指定表呗,呃,Version呢,当前是1.0。然后呢,命令主要是这些。Tables。打印什么?其实就是打印可以备份的表有哪一些,哪一些表是可以用来备份的,就是执行备份remote就是。又创建备份,又上传到远程存储,至于远程存储就是你配置文件指定好的S3啊,它会上传那也可以。单步执行不要一步到位,我先create一次,然后再执行up命令对吧,那其实这个命令就是他俩的结合,一步到位,呃,List是打印当前的备份啊,当前做了哪些备份对吧?呃,Download从远程存储下载下来。
07:13
从远程存储下载下来啊,Restore就是做一个恢复啊,就是把把咱们的备份恢复回去,恢复到咱们的表里面去,那这个是从远程恢复,其实它也是两个动作,干嘛呢?先下载再恢复,也是这个命令的组合啊,其他也没什么看呢。太简单了,没啥了,就这几个命令啊,来,比如说刚才看到的tables,看看哪些表可以备份来看到没有。咱们之前手动是不是得一张一张来呀,还蛮费劲的吧。或者整张库整张表也行,而且它是默认把system给过滤掉了,对吧,咱们刚才看的配置文件的默认配置,它默认把system给过滤掉了,所以这default下面的表他都拿到了,他说这些表可以做备份啊,可以做备份,那接下来呢,我们还可以看,呃,真正创建备份就用一个create命令啊,例子可以查看现有备份,刚才都介绍过,我们先看一下呗。
08:18
啊,也不用修度的对吧,修度干啥呀,咱们是root用户啊。你看现在是啥?他是把咱们之前创建的那个给识别到了,同学们对吧,这个这个是咱们之前创建的my backup name,那为什么能识别到了,其实他也是按照规范来的,他也是会去扫这个路径啊,扫这个路径那为了避免影响我干一个什么事呢?我是不是先把原来的那些乱七八糟的东西都给你删了呀,对吧?呃,Back up路径下面RM杠,RF点个新啊,好了,这下你没有了,Shadow里面我记得是没有啊,这也会用到啊,好,没了都没了,呃,那咱们再list一下。
09:14
家没有了呗。对吧,没有了呗,那咱们再看看tables,我们要开始了,同学们还是这么多表,对吧?好,改一个名字叫create。你看快不快。就问你快不快。瞬间好了对吧,好了,那我们来看一下shadow。这里只有一个什么increment,你看。做了八次了,数据都哪去了?被挪走了?被挪走了,挪到哪去了?Backup。在里面再瞅一瞅,有一个什么他默名字,咱们之前是不是自己起的叫my back up对吧,Name,那现在他起法有一个默认规则是什么日期。
10:04
有一个默认日期啊,2021年7月二十五二十三点十四分对吧,CD我们进去看一眼。其实他差了八个小时,现在已经七点了,现在已经凌晨七点了,他做的什么呢?他就更规范了,他有一个shadow,有一个Meta data,这里边他们前面恢复的时候,是不是要自己去建,找建表语句啊,这边他把什么建表语句也给你弄下来啊,弄下来。对吧。他把建表语句给你弄下来了,而且还有其他的相关信息啊,这就比我们手动的方便多了呗,对吧,原数据也有,呃,那还有这个什么什么点Jason这个又是啥呢。备份的详细信息啊,备份的详细信息都有啊。
11:03
相当于说一个目录呗,我备份了哪些表对吧,什么版本,什么时候,那shadow里面可想而知有一个什么。就是数据啊,那这里是default库,你看这么多表,他帮我们做了一个备份,好了,那我们回来回来这个就是一个备份操作很简单嘛,其实就是一个create命令。就是如此的愉快,那么接下来如果你要传到远程存储呢?如果是S3,你可以直接用命令传过去,那如果是HDFS,你是不是可以手动啊?对不对,你手动上传一下不就得了吗?你懒啥呀,他不支持你就自己来呗。是吧,那接下来我们来恢复呗,恢复的话我们先删一张表,比如说。这张表,哎,那我们啊,就只上一张表就行了,我删这张表啊,RMT啊呃,Show tables。
12:05
好,Drop table rt啊,这张表没了。当然我其实可以删多一点,对吧,咱们把它全删了吧。既然他这么优秀,对吧。呃,我看看有哪几张表啊。我去这么多这么多的话,那么。算了,咱们不要那么折腾。不要这么折腾了,我不想弄了啊。我们现在已经删了一张表,接下来是不是恢复啊,用一个什么命令restore,然后呢,这边要传一个咱们备份的名称,我们说默认是时间对吧,我把它改一下,呃,CD packup,然后呢,是这个名字,其实差了八小时对吧,现在已经。
13:04
凌晨,呃,早上七点了。行,那接下来咱们来恢复啊,恢复恢复车。他说。表已存在。啊,还是因为咱没删。那我干脆drop data。我把你裤上了种行吗?现在库没了,我再尝试着恢复呗。嗯,我看看啊。
14:02
已经存在,那我怀疑一件事。看一下啊。啊。不存在呀,那可能是一个版本问题了,同学们。231450报了什么错误?呃,不能创建表defaul.example director for table data。Or days or try again。We'try again。这个路径怎么会存在呢?我不是删了吗?
15:00
我看一看啊。CD啊,还真的在啊。还真的在啊。那这就比较费劲了,这个是一个版本兼容的问题了,同学们,嗯,咱们填表它软链接到这个路径,删表的话,它只会删除分区。目录不会删除这个路径,那这就很麻烦了呀。那这样,呃,我模拟一个什么存储的数据也干没了呗,全没了呗。删了有没有事,没事我删了呗。我现在连真正的存储路径都干了,我前面删的不够彻底,那这种就是模拟一种人为物操作,我们试一下那么恢复啊,不能恢复就哭了啊。
16:19
呃。什么玩意儿,我看一下。不能打开文件,什么点tmp。已经存在。好,再不能打开这个搜索点tmp,等我抽一。哎,啊,不是CD啊。
17:01
按错了use。然后show tables。瘦推啊,你还真是一点机会都不给啊。好,同学们,我刚才测了一下啊。这边有一些问题。可能是一个版本这种问题,我刚才在哈杜二上面重新做了一遍操作,对吧,我把这个哈杜OP2啊,这个backup工具装上的,然后呢。呃,我tables看了一下,有这么多张表可以备份,我后来呢,我在里面重新创建了一张这个表啊呃,这个表to的MT,然后呢,插入了几条数据,那在这里大家是能看到。
18:09
我建表的啊,你看我这里做了一个建表哈度二,然后做了一个插入啊。然后查这张表是有的啊,查这张表是有的,那后来呢,我就用这个工具做了一个什么呢。可以加刚刚table指定某张表对吧?呃,我就只对default库这张表做一个备份,那备份完呢,其实咱们是可以看到,确实是做好了备份。我用了一个list病历。确实能查到,那后来呢,我就使用命令drop table把这张表给。啊,这个是执行错的,这一行才是把这张表给删除了,删除之后咱们后面在这查,在售tables那张表to的MT已经不在了,确认删除在后面呢,我尝试着用。
19:11
瑞士命令去恢复。也指定了要恢复这张表,后来呢,他又报了这个错什么呢?这个目录已存在。请检查你的。STEM依赖,也就是说它其实对于这个表结构的处理还是有点问题啊,So tables我是找不到的,Select from t order。呃,MT这张表也不存在,所以就但是呢,咱们进入还是哈杜二啊哈杜二,这就是他报错的一个路径。最外面报错的这个路径,我直接进来了。啊,来,我截个图。
20:00
就是这个路径,你对比一下这个ID,我放一块是不是一样的。这个ID一样的,但是呢,你看啊这里的数据。他原本还是在的呀。原本的数据还是在。呃,那说明什么呢?这个是0737对吧,你要不信的话,咱们来做一个对比啊呃瓦Li click house,然后呢,Backup再进来看一下这个备份,再看一下这个shadow,再看一下default。嗯。哎,又多了一层default对吧。那这个就有问题了,那综合来看呢,它就是有一个兼容性问题了,同学们。主要是咱们这个最新版删表的时候,他的操作跟老版不太一样,他这个硬连接里面出了问题。
21:07
所以咱们目前。如果也就是说如果大家要测的话,还是得怎么样,呃,要么你就等这个版本,因为我们知道它是六月份出的,对吧,1.0,那咱们的click house是多少,是七月份出的啊,应该是七月出的对吧?那版本还是比它新一点,那我们可以降一下版本去测啊。跟他适配一下,或者等他更新,那这个工具说白了就是方便咱们用的呗。对吧,那你如果用的没有这么新的版本,那应该是没毛病,那咱们就简单,呃,没办法了啊,那第一个这个stemma参数,咱们不管是做create也好,做瑞orre也好,它呢只还原一个表结构,那咱们这个STEM有问题对吧?这个版本兼容性,你如果版本兼容就还OK啊,还有一个data参数,它就只还原数据,这个目前咱们是可用的,对吧?只还原数据是可以用的,还有一个杠杠table,我刚才用过,对于指定表啊,那其他的如果你要做一些API的开发,那官方有一些文档,另外呢,这个文件夹权限注意啊,不要更改,可能会导致数据。
22:25
失败,那后面这个咱们之前配置介绍过了,就简单了解一下呗,好吧。版本问题啊,版本问题。
我来说两句