00:00
好,那接下来我们聊聊具体的安装工作啊,那我们先看一下它的一个官网,好吧,官网很简单,是一个click house,然后点了catch。呃,老板的域名是这样。后缀是一个young death,但是你看打开之后它会自动跳转,它会不会啊,它会不会,呃,现在是访问不了,因为它这边已经改了,叫什么T来,我们进来。啊,他的域名是修改了,所以如果你看到一些资料,官网是另一个打不开,你就要知道从这进来啊,那这边我们主要看的就是文档。那同时它提供了一个什么呢?在线DEMO,也就是说你可以本地不安装,打开它的页面,可以它上面准备的一个数据库,里面有三张表,有一张表是1亿行,一张是呃,接近1000万行,一张是100多万行。
01:00
啊,就三张表,那你可以在上面写一些语句,去做一些查询,当然你没法去见表啊,那简简单点一下吧。等它打开啊。还比较慢的。在吗?这里有什么一个数据库叫data set,然后呢,里面有三张表,那在这里你可以写一些搜狗语句做一个查询,他其他都注释掉了,对吧,你看这个搜狗是打开的,那你点一下run。他就会跑出结果。啊,这是它的一个查询结果,那么这个语句我看一下是哪张表啊,啊,这张表是有一行数据的啊。你看一个s select星FROM1亿行的表,做了一个简单的过滤even day,那你看它返回速度应该还是蛮快的吧,对吧,另外呢,这边可以怎么玩呢,你看这。
02:04
是不是可以选版本啊啊,20.8的,20.3的,还有19的可以再切换版本去跑啊行,那不多聊,那咱们打你点快文档对吧,点开那这边有一个什么。Getting start,其实就是你外面点快速开始也可以,那这里有一个安装。那如果你需要下载一些事例的数据集,你看我点的是哪个,这个事例数据集点开,点开之后它有这么多种。数据集。他给的数据集都蛮大的啊,有的呢,就是我说的有上上亿行,还有近1000万行,100万行的数据集在这个里面,那除了这个之外,还有其他的一些,你根据你的需要去下载测试都行,那咱们先不聊这个,聊什么安装啊,你点一下,呃,那这边呢,它提供了几种安装的方式啊,一种是直接通过在操作,在我们服务器上执行一个下载命令,把它下载安装,这个是乌班图的命令,对吧,乌班图的,呃,还有一种是。
03:16
咱们的三台OS可以怎么样?亚姆命令直接在线安装对吧,这个是可以的,那还有一种呢,咱们可以怎么手动离线安装对吧?那其实不太推荐在线的啊,不太推荐在线,那你手动把包提前准备好就好了,那你点一个这个什么here,你可以去下载一些离线的RPM包。啊,点here。你看这个就是它下载的一个页面,那这一块呢,你就找呗,你看它是不是有不同的系列,这个是client包,它一共需要四个包啊,一个是client,一个什么common static,还有一种,还有一个包叫再往下拉common static,还有什么DBG,还有一个叫server啊server。
04:09
他是把所有版本都丢一块了,这也看起来会比较不舒服啊,那再往后这这些什么server common啊,Test这些不是必要的,所以咱们给大家准备了四个包啊是那那我们的版本是比较新的啊,今年比较新的,我们随便找一个client,你看我们是这个版本。21.7.3.14,那关于这个版本号,我希望大家记住,因为呃,大家可以看到它更新的频率是比较快的,你看。一个月内他都要跟发布几个小版本。那我们在生产环境中用的话,版本之间之间的一个差别是比较比较大的。差别比较大,那这个呢,呃,特别是一个版本哈,我需要大家记一下啊,就是什么呢?20.5,还有一个叫20.6.3。
05:04
首先它在20.5呢,它有呃一个叫final的支持多线程,这个在高级部分会聊,大家先留个印象啊,20.6.3,它支持什么。Explain执行计划,就像咱们have是不是可以查看一个磁口的执行计划,对吧?那么在这个版本之前是不支持的。就版本小于他的是不支持的,这个版本才正式上的,这个语法老版本只能去日志里面看它的执行过程啊,比较麻烦,呃,所以我生产环境咱们安装的版本,我推荐你至少是要这个版本之后的,那同样的在20.8。这个就看需要了啊,我就列几个版本号啊,20.8它出了一个新的一些引擎啊,酷引擎可以什么实时同步my circle。
06:01
这个是功能,这个看你需要了,看你需不需要,什么意思呢?你咱们是不是学过canon啊,是不是学过ma y啊,是甚至flink的CDC啊,对吧,是不是用来实时同步买circle的,对吧?它的增删改查信息数据把它同步过来,那20.8它加了一个引擎,可以支持这种功能。对吧?啊,那这两个大家了解一下啊,那目前咱们版本是比较新的啊,是这个。你看是2021年怎么样。六月吧。啊不,7月14号。才出的啊,那到后面他又跟了一个版本对吧,后面又跟了一个版本啊。行,那这边的包你也不用特意找了,给到大家的资料啊,就是这个资料文件夹里面,我第二个文件夹安装包,这边我已经提前把四个RPM的包下载好了啊,21.7.3.14对吧,四个包,那这个时候呢,咱们就开始上传呗,来,我先进到一台,这是我的OPT software,我make Di click house。
07:22
然后CD click house现在是空的对吧,我要把它上传上来啊OBDWAR,然后呢,Click house把咱们四个包拖进来就行了。好,等他上传啊。就一个大一点,其他的都还好。行,上传完了对吧?来我们首眼上传就不用过多介绍了吧,相信大家都很熟了,我为什么要单独创建一个文件夹呢?不跟之前这些乱七八糟的放一块儿呢,因为我不想一个一个输名字,咱们正常RBM-IV是不是加一个包敏啊,那我这边只有这四个,我又都要装,我就来个新点PM就行了,就就就为了这个目的而已,那当然咱们给一个修度对吧。
08:21
RPM好车,那么他就会把四个分别安装,你看先装一个。什么呢,Common本,然后再诶大家注意,这边我要提醒一下,就比较新的版本,咱们目前应该是装到哪一个server这个包,它这里会让你什么输入一个什么密码for def fort u的,咱们之前也说了,可定house是支持一个用户权限管理的,那默认呢,老版本它是也不让你输。因为它默认就没有密码,它有一个用户叫做default,用户名就是default。
09:00
默认没密码,那比较新的版本,它是需要让你输入一个默认密码,那如果因为咱们是演示环境,呃,演示的话,我就不去设密码了,不设密码怎么办呢?直接回车,如果你想设你就输就行了,但是你每次呃用客户端去访问的时候都需要输一个密码啊,比较麻烦啊,那我这边咱们一个教学演示环境我就不设了啊,直接回车就行了,他就继续这是一个小细节啊,跟老版本不太一样。好了。是不是安装好了,这个时候你要确认一下RPM杠,QA click。看一下这四个是不是都装上了,好那。关于这种安装方式跟咱们传统不一样,以前咱们是不是把一个T点击Z这种包,然后用T命令把它解压,解压出来是不是在咱们指定的路径下面有多个文件夹,比如说。
10:05
B,比如说com,比如说live,是不是通常是这样,但我们通过RPM或者通过center OS的亚M命令安装的话。这些文件夹不在这儿吧?比如说你要找配置在哪找啊。它默认路径是什么呀?像这种安装方式是不是在ETC下面。哎,这个时候你看ETC它多了一个什么来,我按table键让它提示ETC下面是不是有生成了两个路径啊,一个是什么client,一个什么server,那么ETC通常放的是什么配置文件?那咱们的live呢?咱们的列表一般在哪里啊,在这。在CD e house。你看我这是让他table键提示出来了对吧,默认就在这里啊,默认在这里,那日志呢。
11:04
默认是在log click house,那命令呢?命令在哪里啊?是不是在USR,然后有一个B有一个呢?如果在这里没有,是不是中间再加一层路径叫logo啊,你去找就行了呗,来我们找一下呗,嗯。我过滤一下啊。你看这里是不是有克里克house的一些命令啊?对吧。对不对。说白了,这个东西大家应该很熟了啊,来就说什么呢?B目录在哪里呢?在USRB下面,那它的。com目录在哪里呢?在ETC啊,可house它有一个server,因为咱们改的话主要是改server对吧?然后里面有一堆呢,那咱们的Li目录呢,主要在哪里呢?在呃,VR live click click house那日志呢,他在这,当然这些都是默认的啊,除了这两个之外,后面这两个的路径是可以改的啊。
12:20
就是这么一个对应关系啊。强迫症啊。那么大家就知道我们安装的这种方式,那我们现在先命令就不用去看了,我们去看一下什么。配置文件啊。呃,来CD ETC click house server啊,权限不够,那我先贴一个吧。我先用root用户来,他是自己会创建一个click house用户的。
13:03
那我们也不用去管,那他自己内部控制啊,CD ETC click house server好进来。看一下。啊,PWD一下让大家瞅啊,这里是不是有四个东西,其中两个是什么文件夹,两个是什么配置文件,那文件夹里面一般放的是一些默认配置。默认配置默认的,那还有一些额外配置可以去指定的,来我们看一下这里面现在是不是空的呀,对吧,那包括这个u.D我们看一下也是空的啊,就是最初始的一个状态,说白了咱们最核心是这两个配置文件,那这两个配置文件分别指定啥呢?大家注意啊,呃,这个。需要说明。这个是服务端的配置。
14:00
那U呢,大家直接看名字,是不是以为是什么用户权限啊,密码这些。它当然有,但是你的一些参数配置是在这里,是在优乐里面的啊,什么意思啊,比如说你的CPU给多少,你的最大内存使用量是多少,都在哪里配呢U。能理解吧,那上面这个con是一些呃,通用的服务端的配置,而且是无法被覆盖的一些配置。啊,这个跟我们传统框架不一样,咱们其他框架核心配置或者服务端配置什么参数,CPU资源是不是通通在一个配置文件里面,它不一样啊,也就是说未来大家主要配的。可能是他。就使用上,那我们的部署集群,那在这里可以啊好吧,这个是做一个说明,那我们现在安装好之后需要做一个事儿。
15:00
做啥事儿呢?需要打开一个配置。我们打开这个config.ma。So decent。Listen这边有个东西。我们现在是单机安装啊,同学们单机。那这边需要干一个什么?它默认只有本机可以访问,也就是说local host。也就是说我通过其他节点,比如说我在哈杜二,我要访问哈杜一上面的click house服务访问不了啊,那我们需要把它打开,你看是不是两个冒号啊,其他都省掉了,就是说不对IP做限制。不做限制,那打开之后你就可以远程访问呢啊,所以咱们一般这个是会把它打开的生产环境啊,来你搜一个decent就行了。
16:00
把它的注释去掉,好保存退出,保存退出,那这个时候咱们的单机安装只需要改这个就够了啊,那至于另外两台。要不要装呢,你也可以给装一下嘛。因为后面咱们现在虽然是单机,后面可能要演示一个集群,对吧。也是一个集群情况,呃,那到时候可能会用的,你现在只装一台不影响使用啊,那其他两台的安装过程跟咱们这个一样啊。跟这个一模一样。这个是咱们前面几步的啊。啊,修改配置文件注释打开啊,那这边有一些比较重要的配置对吧,比如说咱们前面谈到的这个什么例文目录,就数据目录,依赖目录,还有日志目录是可以改的啊,那咱们在首页嘛,一页嘛,这个都属于服务端配置在里面,你搜一个什么呢?我记得叫pass。
17:04
嗯,搜搜搜啊,你看这个。Pass这个标签它有一个什么。数据路径,数据目录对吧,这个也也就是说未来咱们的一些表啊,呃,一些原数据啊,啊有表的内容啊,比如说你有100万条,那这些等等,这些数据存在哪呢?在这个路径下面。所以你看需要去修改啊,那咱们一般是不建议修改,除非你就环境不一样啊,你需要改你再去改,那这个是咱们的所谓的立本目录,当然它数据也存在这里啊,数据也在这里啊,那还有一个是日志的啊,我记得有一个log标签,我们搜一下。哎,就是这个。Logo标签,嗯,你往上翻一点,这是什么logo嘛,Logo头这相关的一些配置对吧,那它的默认存储路径是在这。
18:04
VR log clickhouse server。然后呢,文件名就是这个点log,那还有一个它是什么。Aog。这里是不是有一些报错信息啊,也就是说未来比如说你跑一些任务,跑一些查询,他失败了报错,你想看详细的日志在哪看呢。如果报错,你是不是看这个就行了,对吧,那你如说如果想看他执行过程中的日志,是不看这个就行对吧,那你再看它默认日志级别是什么trae。Trace就是比debug级别更低一层嘛,信息更加的全面详细嘛,对不对啊,他把所有的都会给你打印出来。都会打印出来,那关于这个看日志说白了是咱们的一个基本能力,对吧,那我也不再去说了啊,不再去说了。好。
19:00
呃,分发配置文件,咱们就。因为我现在只装了一台,我没分发,回头再把另外两台装上,咱们就现在不浪费时间啊,那至于这个启动啊,这边我要把命令改一下,这个是老板的一个用法。来,我先拷过来,呃,我先退出用艾特硅谷用户来操作啊,咱们center OT是不是一个system city啊,Status看状态对吧,Click house server。用这个命令,那现在是不是启动的十分钟之前。对吧。好,那这个东西呢,其实你用这种方式也可以,但咱们有个更方便的呀,修do什么click house,然后呢。这个是他官方,呃,就是安装安装包提供的命令,你直接用命令就行了,没必要用那个那个不好不好敲,对吧?啊你就就就可里格house命令后面可以跟status,还可以跟什么,还可以跟start,还可以跟什么stop,还可以跟restar,那我们刚才是不是修改了配置文件呢?这个时候得干嘛呀,Restart一下嘛,对吧,要重启一下啊,好回车。
20:15
你看用这个命令就很简单了呗。好,So do click house restart。修do是加权限嘛,就这个命令加就行,这样比较好记啊,你看已经启动了,那这样就OK了,那我们怎么连呢。用一个click house命令杠client用这个命令就行,后面我们通常会加一个参数杠M。M的意思是什么?我在里面挑的时候可以换行。你不换行一回车是不是代表直行啊,对吧?那杠M就是以分号为识别代表语句的一个结束。这就杠M的作用,那除了杠M还有哪些参数呢?你看这边一大坨。
21:02
很多,咱们不一一介绍,因为有一些是什么参数的设置,那我们介绍一些其他的,比如说我在哈杜二上面想要访问哈杜OP1单机版的吗?因为它是单击,是不是自己访问了,现在远程访问怎么办呢?我在哈杜OP2上面可以执行这个命令。Client,呃,Click house client,然后杠H,然后加上你的主机名。主机名,那如果我这边我要连哈一,那应该是什么?应啊,我在这敲吧,应该是这样,Click house client,杠H表示主机名啊,主机名杠H是哈韦一还可以,杠P是端口对吧,还可以,呃,指定那个密码啥的等等参数是这个作用啊,那这个比较简单,我就不去聊了。还可以杠什么呢?Click house client,杠杠pory后面可以写一个查询语句,查询语句相当于说这个类似于什么,咱们have里面是不是有个have杠一呀,啊对,这杠杠cor跟have杠一就一个作用,写circle,我不进去,我直接查返回结果。
22:19
行,不啰嗦那么多,我们先进来看一看杠M对吧,进来你看。是不是一个交互式的命令行,而且端口默认是多少?这个端口大家要记啊。如果你有端口冲突,你要去改的呀,是多少9000。呃,9000这个端口很长,也算是常用吧,所以你大概率会去改啊。看看你的环境啊,那这边我受data basis你看。是返回了这个。我默认有什么库啊,有两个库,一个叫default库,一个叫system,对吧,一个系统库,那我们现在比如说我use system。
23:06
你看这语法是不是都一样的对吧,那同样的那可以干什么,Show tables对吧,你看这些是系统自带的表啊,系统自带的一些表。那茶呢,比如说from,我看看啊,Deals。就这张表啊,我们查user吧,用户表来返回。他说什么?没有足够的权限。没有足够的权限对吧?嗯,没权限,那我先不查你了。因为咱们现在登进来是什么default用户啊,Default用户。是一个啊来。我退出再介绍一个,咱们可能会用到了刚才说的啊杠杠坡,那这个怎么写呢?比如说受data basis对吧,就是里面写一个搜索语句嘛,这个分号加不加都行,里面这个啊杠杠corry,来看一下它是不是直接返回,这个跟前面不一样吧,前面是交互式的一个命令行,这就是一个区别啊,就常用的两种啊。
24:21
好,我们来瞅瞅,呃,那至于这里呢,要不要关闭开机字体呢?这个你在生产环境怎么样?肯定是不会关的。你是不是期望重启它这个服务能自动提起来,那如果你是自己的虚拟机,自己想玩一玩,你现在学习呃,想学习它的时候用你开起来,那平时你可能不希望它自动启动,你就把它关掉就行了,执行这个命令对吧,咱们直接拿过来把它disable disable掉就行了,那比如说我,我肯定不希望平时把它提起来了啊,大家注意啊,再啰嗦一遍。生产环境不要关啊。
25:01
生产环境不要去关这个东西啊。好,这个就是咱们的一个安装啊安装。
我来说两句