一 Hive的下载

软件下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hive/  这里下载的版本是:apache-hive-2.3.3-bin.tar.gz

官方安装配置文档:https://cwiki.apache.org/confluence/display/Hive/GettingStarted

二 Hive单用户安装

远程Metastore数据库

1  解压配置环境变量

#解压指定位置安装
[admin@node21 software]$ tar zxvf apache-hive-2.3.3-bin.tar.gz -C /opt/module/
[admin@node21 module]$ mv apache-hive-2.3.3-bin hive-2.3.3
#配置环境变量
[admin@node21 hive-2.3.3]$ sudo vi /etc/profile
末尾追加
export HIVE_HOME=/opt/module/hive-2.3.3
export PATH=$PATH:$HIVE_HOME/bin
重新编译环境变量生效
[admin@node21 hive-2.3.3]$ source /etc/profile

2 配置Hive文件

2.1 修改hive-env.sh

[admin@node21 conf]$ cd /opt/module/hive-2.3.3/conf
[admin@node21 conf]$ cp hive-env.sh.template hive-env.sh
[admin@node21 conf]$ vi hive-env.sh
# HADOOP_HOME=${bin}/../../hadoop
打开注释修改 HADOOP_HOME=/opt/module/hadoop-2.7.6
# export HIVE_CONF_DIR=
打开注释修改 HIVE_CONF_DIR=/opt/module/hive-2.3.3/conf

2.2 修改hive-log4j.properties

修改hive的log存放日志到/opt/module/hive-2.3.3/logs

[admin@node21 conf]$ mv hive-log4j2.properties.template hive-log4j2.properties
[admin@node21 conf]$ vi hive-log4j2.properties
找到 property.hive.log.dir = ${sys:java.io.tmpdir}/${sys:user.name}
修改 property.hive.log.dir = /opt/module/hive-2.3.3/logs

3 配置MySQL作为Metastore

默认情况下, Hive的元数据保存在了内嵌的 derby 数据库里, 但一般情况下生产环境使用 MySQL 来存放 Hive 元数据。

3.1 安装mysql

参考地址:https://www.cnblogs.com/frankdeng/p/9017384.html

安装mysql,拷贝 mysql-connector-java-5.1.9-bin.jar 放入 $HIVE_HOME/lib 下。

[admin@node21 software]$ cp mysql-connector-java-5.1.9.jar  /opt/module/hive-2.3.3/lib/

3.2 修改配置文件

参数配置文档:https://cwiki.apache.org/confluence/display/Hive/AdminManual+MetastoreAdmin

复制hive-default.xml.template为hive-site.xml 文件,删除掉configuration里的配置信息,重新配置 MySQL 数据库连接信息。

[admin@node21 conf]$ vi hive-site.xml

删除命令:光标在configuration的下一行,输入:.,$-1d  (光标所在行到 倒数第二行)回车,进行如下编辑

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--Hive作业的HDFS根目录位置 -->
<property>
<name>hive.exec.scratchdir</name>
<value>/user/hive/tmp</value>
</property>
<!--Hive作业的HDFS根目录创建写权限 -->
<property>
<name>hive.scratch.dir.permission</name>
<value>733</value>
</property>
<!--hdfs上hive元数据存放位置 -->
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<!--连接数据库地址,名称 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://node21/hive?createDatabaseIfNotExist=true</value>
</property>
<!--连接数据库驱动 -->
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!--连接数据库用户名称 -->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
</property>
<!--连接数据库用户密码 -->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hive</value>
</property>
<!--客户端显示当前查询表的头信息 -->
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<!--客户端显示当前数据库名称信息 -->
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
</configuration>

3.3 mysql创建hive用户密码

mysql> CREATE DATABASE hive;
mysql> USE hive;
mysql> CREATE USER 'hive'@'localhost' IDENTIFIED BY 'hive';
mysql> GRANT ALL ON hive.* TO 'hive'@'localhost' IDENTIFIED BY 'hive';
mysql> GRANT ALL ON hive.* TO 'hive'@'%' IDENTIFIED BY 'hive';
mysql> FLUSH PRIVILEGES;
mysql> quit;

4  运行Hive

4.1 初始化数据库

从Hive 2.1开始,我们需要运行下面的schematool命令作为初始化步骤。例如,这里使用“mysql”作为db类型。

[admin@node21 conf]$ schematool -dbType mysql -initSchema

终端输出如下信息

执行成功后,可以使用Navicat Premium 查看元数据库 hive 是否已经创建成功。

4.2 启动 Hive 客户端

启动Hadoop服务,使用 Hive CLI(Hive command line interface), hive --service cli和hive效果一样,可以在终端输入以下命令:

[admin@node21 conf]$ hive

启动信息如下:

which: no hbase in (/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/module/jdk1.8/bin:/opt/module/jdk1.8/sbin:/opt/module/zookeeper-3.4.12/bin:/opt/module/
hadoop-2.7.6/bin:/opt/module/hadoop-2.7.6/sbin:/opt/module/hive-2.3.3/bin:/home/admin/.local/bin:/home/admin/bin)SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/module/hive-2.3.3/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/module/hadoop-2.7.6/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory] Logging initialized using configuration in file:/opt/module/hive-2.3.3/conf/hive-log4j2.properties Async: true
Hive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. spark, tez) or using Hive 1.X rel
eases.hive (default)>  

三 多用户安装

用于非Java客户端访问元数据库,在服务器端启动MetaStoreServer,客户端利用Thrift协议通过MetaStoreServer访问元数据库。

1 本地Metastore服务器

在本地/嵌入式Metastore设置中,Metastore服务器组件像Hive Client中的库一样使用。 每个Hive客户端都将打开一个到数据库的连接并对其进行SQL查询。确保可以从执行Hive查询的机器访问数据库,因为这是本地存储。还要确保JDBC客户端库位于Hive Client的类路径中。此配置通常与HiveServer2一起使用。

这里node21作为MySQL Server,node22同时作为Metastore服务器和客户端。

1.1 解压安装hive

[admin@node22 software]$ tar zxvf apache-hive-2.3.3-bin.tar.gz -C /opt/module/
[admin@node22 module]$ mv apache-hive-2.3.3-bin hive-2.3.3

1.2 配置环境变量

[admin@node22 module]$ sudo vi /etc/profile
末尾追加
export HIVE_HOME=/opt/module/hive-2.3.3
export PATH=$PATH:$HIVE_HOME/bin
重新编译环境变量生效
[admin@node22 hive-2.3.3]$ source /etc/profile

1.3 修改conf文件

1.3.1 修改hive-env.sh

[admin@node22 conf]$ cd /opt/module/hive-2.3.3/conf
[admin@node22 conf]$ cp hive-env.sh.template hive-env.sh
[admin@node22 conf]$ vi hive-env.sh
# HADOOP_HOME=${bin}/../../hadoop
打开注释修改 HADOOP_HOME=/opt/module/hadoop-2.7.6
# export HIVE_CONF_DIR=
打开注释修改 HIVE_CONF_DIR=/opt/module/hive-2.3.3/conf

1.3.2 修改hive-log4j.properties

[admin@node22 conf]$ mv hive-log4j2.properties.template hive-log4j2.properties
[admin@node21 conf]$ vi hive-log4j2.properties
找到 property.hive.log.dir = ${sys:java.io.tmpdir}/${sys:user.name}
修改 property.hive.log.dir = /opt/module/hive-2.3.3/logs

1.3.3 修改hive-site.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--Hive作业的HDFS根目录位置 -->
<property>
<name>hive.exec.scratchdir</name>
<value>/user/hive/tmp</value>
</property>
<!--Hive作业的HDFS根目录创建写权限 -->
<property>
<name>hive.scratch.dir.permission</name>
<value>733</value>
</property>
<!--hdfs上hive元数据存放位置 -->
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<!--连接数据库地址,名称 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://node21/hive?createDatabaseIfNotExist=true</value>
</property>
<!--连接数据库驱动 -->
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!--连接数据库用户名称 -->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
</property>
<!--连接数据库用户密码 -->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hive</value>
</property>
<!--客户端显示当前查询表的头信息 -->
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<!--客户端显示当前数据库名称信息 -->
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
</configuration>

1.4 运行Hive

初始化数据库

[admin@node22 conf]$ schematool -dbType mysql -initSchema  hive hive

1.4.1第一种方式

服务端启动:

[admin@node22 ~]$ hive --service metastore 

客户端启动:

[admin@node22 ~]$ hive

退出:quit

1.4.2第二种方式

服务端启动:

[admin@node22 ~]$  hiveserver2

客户端启动:

[admin@node22 ~]$  beeline -u  jdbc:hive2://node22:10000 -n root
或者
[admin@node22 ~]$ beeline !connect jdbc:hive2://node22:10000 hive hive

退出:

!quit

2 远程Metastore服务器

这里node21作为MySQL Server,node22作为Metastore服务器,node23作为客户端。

2.1 解压安装hive

[admin@node22 software]$ tar zxvf apache-hive-2.3.3-bin.tar.gz -C /opt/module/
[admin@node22 module]$ mv apache-hive-2.3.3-bin hive-2.3.3
[admin@node23 software]$ tar zxvf apache-hive-2.3.3-bin.tar.gz -C /opt/module/
[admin@node23 module]$ mv apache-hive-2.3.3-bin hive-2.3.3

2.2 配置环境变量

[admin@node22 module]$ sudo vi /etc/profile
[admin@node23 module]$ sudo vi /etc/profile
末尾追加
export HIVE_HOME=/opt/module/hive-2.3.3
export PATH=$PATH:$HIVE_HOME/bin
重新编译环境变量生效
[admin@node22 hive-2.3.3]$ source /etc/profile
[admin@node22 hive-2.3.3]$ source /etc/profile

2.3 修改conf文件

2.3.1 修改hive-env.sh

修改node22,node23节点的hive-env.sh
cd /opt/module/hive-2.3.3/conf
cp hive-env.sh.template hive-env.sh
vi hive-env.sh
# HADOOP_HOME=${bin}/../../hadoop
打开注释修改 HADOOP_HOME=/opt/module/hadoop-2.7.6
# export HIVE_CONF_DIR=
打开注释修改 HIVE_CONF_DIR=/opt/module/hive-2.3.3/conf

2.3.2 修改hive-log4j.properties

修改node22,node23节点上的hive-log4j2.properties
mv hive-log4j2.properties.template hive-log4j2.properties
vi hive-log4j2.properties
找到 property.hive.log.dir = ${sys:java.io.tmpdir}/${sys:user.name}
修改 property.hive.log.dir = /opt/module/hive-2.3.3/logs

2.3.3 修改hive-site.xml

服务端配置

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--Hive作业的HDFS根目录位置 -->
<property>
<name>hive.exec.scratchdir</name>
<value>/user/hive/tmp</value>
</property>
<!--Hive作业的HDFS根目录创建写权限 -->
<property>
<name>hive.scratch.dir.permission</name>
<value>733</value>
</property>
<!--hdfs上hive元数据存放位置 -->
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<!--连接数据库地址,名称 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://node21/hive?createDatabaseIfNotExist=true</value>
</property>
<!--连接数据库驱动 -->
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!--连接数据库用户名称 -->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
</property>
<!--连接数据库用户密码 -->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hive</value>
</property>
<!--客户端显示当前查询表的头信息 -->
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<!--客户端显示当前数据库名称信息 -->
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
</configuration>

客户端配置

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--Hive作业的HDFS根目录位置 -->
<property>
<name>hive.exec.scratchdir</name>
<value>/user/hive/tmp</value>
</property>
<!--Hive作业的HDFS根目录创建写权限 -->
<property>
<name>hive.scratch.dir.permission</name>
<value>733</value>
</property>
<!--hdfs上hive元数据存放位置,默认 -->
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<!--客户端显示当前数据库名称信息 -->
<property>
<name>hive.metastore.uris</name>
<value>thrift://node22:9083</value>
</property>
<!--客户端显示当前查询表的头信息 -->
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<!--客户端显示当前数据库名称信息 -->
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
</configuration>

2.4 运行Hive

拷贝 mysql-connector-java-5.1.9-bin.jar到服务端hive/lib下。

初始化服务器端

[admin@node22 conf]$ schematool -dbType mysql -initSchema  hive hive

启动方式:

服务端node22启动命令:

hive  --service metastore

查看node22的9083端口:

netstat -nptl | grep 9083

客户端node23启动命令:

hive

四 Hive基本使用

现有一个文件student.txt,将其存入hive中,student.txt数据格式如下:

95002,刘晨,女,19,IS
95017,王风娟,女,18,IS
95018,王一,女,19,IS
95013,冯伟,男,21,CS
95014,王小丽,女,19,CS
95019,邢小丽,女,19,IS
95020,赵钱,男,21,IS
95003,王敏,女,22,MA
95004,张立,男,19,IS
95012,孙花,女,20,CS
95010,孔小涛,男,19,CS
95005,刘刚,男,18,MA
95006,孙庆,男,23,CS
95007,易思玲,女,19,MA
95008,李娜,女,18,CS
95021,周二,男,17,MA
95022,郑明,男,20,MA
95001,李勇,男,20,CS
95011,包小柏,男,18,MA
95009,梦圆圆,女,18,MA
95015,王君,男,18,MA

1、创建一个数据库myhive

hive> create database myhive;
OK
Time taken: 7.847 seconds
hive>

2、使用新的数据库myhive

hive> use myhive;
OK
Time taken: 0.047 seconds
hive>

3、查看当前正在使用的数据库

hive> select current_database();
OK
myhive
Time taken: 0.728 seconds, Fetched: 1 row(s)
hive>

4、在数据库myhive创建一张student表

hive> create table student(id int, name string, sex string, age int, department string) row format delimited fields terminated by ",";
OK
Time taken: 0.718 seconds
hive>

5、往表中加载数据

hive> load data local inpath "/home/hadoop/student.txt" into table student;
Loading data to table myhive.student
OK
Time taken: 1.854 seconds
hive>

6、查询数据

hive> select * from student;
OK
95002 刘晨 女 19 IS
95017 王风娟 女 18 IS
95018 王一 女 19 IS
95013 冯伟 男 21 CS
95014 王小丽 女 19 CS
95019 邢小丽 女 19 IS
95020 赵钱 男 21 IS
95003 王敏 女 22 MA
95004 张立 男 19 IS
95012 孙花 女 20 CS
95010 孔小涛 男 19 CS
95005 刘刚 男 18 MA
95006 孙庆 男 23 CS
95007 易思玲 女 19 MA
95008 李娜 女 18 CS
95021 周二 男 17 MA
95022 郑明 男 20 MA
95001 李勇 男 20 CS
95011 包小柏 男 18 MA
95009 梦圆圆 女 18 MA
95015 王君 男 18 MA
Time taken: 2.455 seconds, Fetched: 21 row(s)
hive>

7、查看表结构

hive> desc student;
OK
id int
name string
sex string
age int
department string
Time taken: 0.102 seconds, Fetched: 5 row(s)
hive>
hive> desc extended student;
OK
id int
name string
sex string
age int
department string Detailed Table Information Table(tableName:student, dbName:myhive, owner:hadoop, createTime:1522750487, lastAccessTime:0, retention:0, sd:StorageDescriptor(cols:[FieldSchema(name:id, type:int, comment:null), FieldSchema(name:name, type:string, comment:null), FieldSchema(name:sex, type:string, comment:null), FieldSchema(name:age, type:int, comment:null), FieldSchema(name:department, type:string, comment:null)], location:hdfs://myha01/user/hive/warehouse/myhive.db/student, inputFormat:org.apache.hadoop.mapred.TextInputFormat, outputFormat:org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat, compressed:false, numBuckets:-1, serdeInfo:SerDeInfo(name:null, serializationLib:org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, parameters:{serialization.format=,, field.delim=,}), bucketCols:[], sortCols:[], parameters:{}, skewedInfo:SkewedInfo(skewedColNames:[], skewedColValues:[], skewedColValueLocationMaps:{}), storedAsSubDirectories:false), partitionKeys:[], parameters:{transient_lastDdlTime=1522750695, totalSize=523, numRows=0, rawDataSize=0, numFiles=1}, viewOriginalText:null, viewExpandedText:null, tableType:MANAGED_TABLE, rewriteEnabled:false)
Time taken: 0.127 seconds, Fetched: 7 row(s)
hive>
hive> desc formatted student;
OK
# col_name data_type comment id int
name string
sex string
age int
department string # Detailed Table Information
Database: myhive
Owner: hadoop
CreateTime: Tue Apr 03 18:14:47 CST 2018
LastAccessTime: UNKNOWN
Retention: 0
Location: hdfs://myha01/user/hive/warehouse/myhive.db/student
Table Type: MANAGED_TABLE
Table Parameters:
numFiles 1
numRows 0
rawDataSize 0
totalSize 523
transient_lastDdlTime 1522750695 # Storage Information
SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
InputFormat: org.apache.hadoop.mapred.TextInputFormat
OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
Compressed: No
Num Buckets: -1
Bucket Columns: []
Sort Columns: []
Storage Desc Params:
field.delim ,
serialization.format ,
Time taken: 0.13 seconds, Fetched: 34 row(s)
hive>

五 安装故障解析

1.没有初始化数据库

[admin@node21 conf]$ hive
which: no hbase in (/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/module/jdk1.8/bin:/opt/module/jdk1.8/sbin:/opt/module/zookeeper-3.4.12/bin:/opt/module
/hadoop-2.7.6/bin:/opt/module/hadoop-2.7.6/sbin:/home/admin/.local/bin:/home/admin/bin:/opt/module/jdk1.8/bin:/opt/module/jdk1.8/sbin:/opt/module/zookeeper-3.4.12/bin:/opt/module/hadoop-2.7.6/bin:/opt/module/hadoop-2.7.6/sbin:/opt/module/jdk1.8/bin:/opt/module/jdk1.8/sbin:/opt/module/zookeeper-3.4.12/bin:/opt/module/hadoop-2.7.6/bin:/opt/module/hadoop-2.7.6/sbin:/opt/module/jdk1.8/bin:/opt/module/jdk1.8/sbin:/opt/module/zookeeper-3.4.12/bin:/opt/module/hadoop-2.7.6/bin:/opt/module/hadoop-2.7.6/sbin:/opt/module/hive-2.3.3/bin)SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/module/hive-2.3.3/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/module/hadoop-2.7.6/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory] Logging initialized using configuration in jar:file:/opt/module/hive-2.3.3/lib/hive-common-2.3.3.jar!/hive-log4j2.properties Async: true
Exception in thread "main" java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.
name%7D at org.apache.hadoop.fs.Path.initialize(Path.java:205)
at org.apache.hadoop.fs.Path.<init>(Path.java:171)
at org.apache.hadoop.hive.ql.session.SessionState.createSessionDirs(SessionState.java:659)
at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:582)
at org.apache.hadoop.hive.ql.session.SessionState.beginStart(SessionState.java:549)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:750)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:686)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
Caused by: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
at java.net.URI.checkPath(URI.java:1823)
at java.net.URI.<init>(URI.java:745)
at org.apache.hadoop.fs.Path.initialize(Path.java:202)
... 12 more
 

CentOS7.5搭建Hive2.3.3的更多相关文章

  1. centos7 环境搭建

    centos7 环境搭建    CentOS-7-x86_64-DVD-1511.iso    vmware121. 安装    使用iso安装系统:2. 修改yum源到光盘        先把光盘C ...

  2. Kafka(二)CentOS7.5搭建Kafka2.11-1.1.0集群与简单测试

    一.下载 下载地址: http://kafka.apache.org/downloads.html    我这里下载的是Scala 2.11对应的 kafka_2.11-1.1.0.tgz 二.kaf ...

  3. 在Centos7下搭建Socks5代理服务器

    在Centos7下搭建Socks5代理服务器 http://blog.51cto.com/quliren/2052776   采用socks协议的代理服务器就是SOCKS服务器,是一种通用的代理服务器 ...

  4. 第四百零五节,centos7下搭建sentry错误日志服务器,接收python以及Django错误,

    第四百零五节,centos7下搭建sentry错误日志服务器,接收python以及Django错误, 注意:版本,不然会报错 Docker >=1.11Compose >1.6.0 通过d ...

  5. Hyperledger超级账本在Centos7下搭建运行环境

    超级账本(hyperledger)是Linux基金会于2015年发起的推进区块链数字技术和交易验证的开源项目,加入成员包括:荷兰银行(ABN AMRO).埃森哲(Accenture)等十几个不同利益体 ...

  6. git操作:在CentOS7上面搭建GitLab服务器

    在这篇文章中将要讲解如何在CentOS7上面搭建本地的GitLab服务器. 一.安装并配置必要的依赖关系 首先要在CentOS系统上面安装所需的依赖:ssh.防火墙.postfix(用于邮件通知).w ...

  7. Storm(二)CentOS7.5搭建Storm1.2.2集群

    一.Storm的下载 官网下载地址:http://storm.apache.org/downloads.html 这里下载最新的版本storm1.2.2,进入之后选择一个镜像下载 二.Storm伪分布 ...

  8. HBase(二)CentOS7.5搭建HBase1.2.6HA集群

    一.安装前提 1.HBase 依赖于 HDFS 做底层的数据存储 2.HBase 依赖于 MapReduce 做数据计算 3.HBase 依赖于 ZooKeeper 做服务协调 4.HBase源码是j ...

  9. Spark(二)CentOS7.5搭建Spark2.3.1分布式集群

    一 下载安装包 1 官方下载 官方下载地址:http://spark.apache.org/downloads.html 2  安装前提 Java8         安装成功 zookeeper  安 ...

随机推荐

  1. GYM101635E Ingredients

    题目链接:https://vjudge.net/problem/Gym-101635E 题目大意: 给定一个有 \(N\) 条边的有向无环图(有多个起点),每条边都有其费用和收益,现要从一个或多个起点 ...

  2. mysql单记录也能造成的死锁

    最近在开发的时候,在mysql Innodb 引擎下,一条记录记录也能引起锁的事件. 场景描述 在项目压测的是,突然发现有类似以下的异常发生: com.mysql.jdbc.exceptions.jd ...

  3. xv6 操作系统的环境搭建

    xv6 是 MIT 设计的一个教学型操纵系统.xv6 可在 Intel X86 框架上运行,为了方便,建议将 xv6 运行在 QEMU 虚拟机器上,本人的实验环境是 ubuntu 18.04 . 1. ...

  4. C#正则表达式基础

    namespace ---> System.Text.RegularExpressions. static void Main(string[] args) { // if (IsInputMa ...

  5. 永久关闭windows更新步骤

    在搜索“web和windows”框中输入“服务” 在搜索结果中点击第一个,那个图标像齿轮的那个!如下图. 在打开的“服务”窗口中,我们找到windows update   找到”windows upd ...

  6. [安全] HTTPS的理解

    一.概述 在下面的章节,我们要搞明白以下几个问题: HTTP和HTTPS的区别,为什么要使用HTTPS HTTPS如何解决加密问题 HTTPS如何避免中间人攻击 CA证书是什么 CA证书是如何申请和颁 ...

  7. 阿里P9精心编写高并发设计手册,来看大厂是如何进行系统设计

    在看这篇文章的应该都是IT圈的朋友吧,不知道你们有没有考虑过这样几件事: 淘宝双11的剁手狂欢为什么天猫没崩掉? 为什么滴滴打车高峰如何滴滴依旧可以平稳运行? 为什么疫情期间,钉钉能支撑那么多人同时上 ...

  8. 【Ubuntu】安装Ubuntu18.04.2LTS

    环境:win10专业版.联想30D9主板 ubuntu:18.04.2LTS:Ubuntu镜像传送门:https://ubuntu.com/download/desktop 有两块硬盘,win10安装 ...

  9. [JavaWeb基础] 021.Action中result的各种转发类型

    在struts2中, struts.xml中result的类型有多种,它们类似于struts1中的forward,常用的类型有dispatcher(默认值).redirect.redirectActi ...

  10. 线程池续:你必须要知道的线程池submit()实现原理之FutureTask!

    前言 上一篇内容写了Java中线程池的实现原理及源码分析,说好的是实实在在的大满足,想通过一篇文章让大家对线程池有个透彻的了解,但是文章写完总觉得还缺点什么? 上篇文章只提到线程提交的execute( ...