“2020红亚杯:Hive搭建”的版本间的差异
小 (Cloud17移动页面Hive搭建至2020红亚杯:Hive搭建) |
|||
(未显示1个用户的4个中间版本) | |||
第8行: | 第8行: | ||
'''01下载MySQL''' | '''01下载MySQL''' | ||
− | |||
− | |||
前提:修改本地源 | 前提:修改本地源 | ||
+ | 安装MySQL: | ||
+ | <nowiki>yum -y install mysql-community-server</nowiki> | ||
− | + | '''02启动MySQL服务''' | |
− | |||
− | + | 重启所用修改过的配置文件: | |
− | |||
− | |||
− | |||
systemctl daemon-reload; | systemctl daemon-reload; | ||
systemctl start mysqld;#开启服务 | systemctl start mysqld;#开启服务 | ||
systemctl enable mysqld;#开机自启 | systemctl enable mysqld;#开机自启 | ||
− | + | ||
若不免密则: | 若不免密则: | ||
− | |||
− | |||
− | |||
grep "temporary password" /var/log/mysqld.log | grep "temporary password" /var/log/mysqld.log | ||
− | + | ''' | |
+ | 04MySQL密码安全测试''' | ||
− | + | 设置密码强度为底级:设置密码长度:修改本地密码: | |
− | |||
− | |||
− | |||
set global validate_password_policy=0; | set global validate_password_policy=0; | ||
set global validate_password_length=4; | set global validate_password_length=4; | ||
alter user 'root'@'localhost' identified by '123456'; | alter user 'root'@'localhost' identified by '123456'; | ||
− | |||
− | |||
− | + | 退出:\q | |
+ | '''05授权及生效''' | ||
− | + | 新密码登录MySQL: | |
− | |||
mysql -uroot -p123456 | mysql -uroot -p123456 | ||
− | |||
− | |||
− | + | '''创建新用户''': | |
− | create user 'root'@'%' identified by'123456'; | + | mysql create user 'root'@'%' identified by'123456'; |
− | |||
− | |||
− | + | '''允许远程链接''': | |
− | |||
− | |||
− | + | mysql grant all privileges on *.*to 'root'@'%' with grant option; | |
+ | |||
+ | '''查看 mysql 数据库下的 user表信息:''' | ||
− | |||
use mysql; # 切换成mysql数据库 | use mysql; # 切换成mysql数据库 | ||
select user,host from user; # 查询用户信息 | select user,host from user; # 查询用户信息 | ||
− | |||
− | |||
− | |||
# 设置远程登录权限 | # 设置远程登录权限 | ||
update user set host='%' where host='localhost'; | update user set host='%' where host='localhost'; | ||
# 刷新配置信息 | # 刷新配置信息 | ||
flush privileges; | flush privileges; | ||
− | |||
− | |||
− | + | '''刷新权限''': | |
+ | |||
flush privileges; | flush privileges; | ||
− | |||
− | + | '''可以创建数据库了''' | |
− | + | create database hongyaa; | |
− | |||
− | |||
− | |||
− | + | ==客户端服务器端都执行master和salve1== | |
− | + | '''01下载解压''' | |
− | |||
mkdir -p /usr/hive | mkdir -p /usr/hive | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
tar -zxvf apache-hive-2.3.4-bin.tar.gz -C /usr/hive | tar -zxvf apache-hive-2.3.4-bin.tar.gz -C /usr/hive | ||
− | |||
− | + | '''02配置环境变量''' | |
(1)首先打开 /etc/profile 文件: | (1)首先打开 /etc/profile 文件: | ||
− | |||
vim /etc/profile | vim /etc/profile | ||
− | |||
(2)将以下内容添加到配置文件的底部,添加完成输入“:wq”保存退出: | (2)将以下内容添加到配置文件的底部,添加完成输入“:wq”保存退出: | ||
− | |||
# 配置Hive的安装目录 | # 配置Hive的安装目录 | ||
export HIVE_HOME=/usr/hive/apache-hive-2.1.1-bin | export HIVE_HOME=/usr/hive/apache-hive-2.1.1-bin | ||
# 在原PATH的基础上加入Hive的bin目录 | # 在原PATH的基础上加入Hive的bin目录 | ||
export PATH=$PATH:$HIVE_HOME/bin | export PATH=$PATH:$HIVE_HOME/bin | ||
− | |||
− | |||
− | + | (3)让配置文件立即生效,使用如下命令: | |
+ | |||
source /etc/profile | source /etc/profile | ||
− | |||
− | |||
− | + | (4)检测 Hive 环境变量是否设置成 | |
+ | |||
hive --version | hive --version | ||
− | |||
− | |||
− | 2.3 修改配置文件 hive-env.sh | + | '''03hive-env.sh配置''' |
+ | |||
+ | |||
+ | == 2.3 修改配置文件 hive-env.sh == | ||
− | + | 切换到 ${HIVE_HOME}/conf 目录下,将 hive-env.sh.template 文件复制一份并重命名为 hive-env.sh: | |
− | |||
cd ${HIVE_HOME}/conf;cp hive-env.sh.template hive-env.sh | cd ${HIVE_HOME}/conf;cp hive-env.sh.template hive-env.sh | ||
− | |||
− | |||
− | + | 修改完成,使用 vi 编辑器进行编辑: | |
+ | |||
vim hive-env.sh | vim hive-env.sh | ||
− | |||
− | |||
− | + | 在文件中配置 **HADOOP_HOME**、**HIVE_CONF_DIR** 以及**HIVE_AUX_JARS_PATH** 参数: | |
+ | |||
+ | |||
# 配置Hadoop安装路径 | # 配置Hadoop安装路径 | ||
HADOOP_HOME=${HADOOP_HOME} | HADOOP_HOME=${HADOOP_HOME} | ||
第166行: | 第128行: | ||
# 配置Hive运行资源库路径 | # 配置Hive运行资源库路径 | ||
export HIVE_AUX_JARS_PATH=/usr/hive/apache-hive-2.1.1-bin/lib | export HIVE_AUX_JARS_PATH=/usr/hive/apache-hive-2.1.1-bin/lib | ||
− | |||
− | |||
配置完成,输入“:wq”保存退出。 | 配置完成,输入“:wq”保存退出。 | ||
− | |||
− | + | == slave1元数据配置 == | |
+ | |||
将/root/software目录下的 MySQL 驱动包 mysql-connector-java-5.1.47-bin.jar 拷贝到 ${HIVE_HOME}/lib 目录下 | 将/root/software目录下的 MySQL 驱动包 mysql-connector-java-5.1.47-bin.jar 拷贝到 ${HIVE_HOME}/lib 目录下 | ||
− | |||
− | |||
− | |||
wget -P /root/apache-hive-2.1.1-bin/lib http://master:3306/mysql-connectot-java-5.1.47.bin.jar | wget -P /root/apache-hive-2.1.1-bin/lib http://master:3306/mysql-connectot-java-5.1.47.bin.jar | ||
− | |||
− | |||
− | |||
cp /root/mysql-connector-java-5.1.47-bin.jar /usr/hive/apache-hive-2.1.1-bin/lib | cp /root/mysql-connector-java-5.1.47-bin.jar /usr/hive/apache-hive-2.1.1-bin/lib | ||
− | + | 在${HIVE_HOME}/conf目录下创建一个名为hive-site.xml的文件,并使用vi编辑器进行编辑: | |
− | |||
− | |||
cd ${HIVE_HOME}/conf; | cd ${HIVE_HOME}/conf; | ||
touch hive-site.xml; | touch hive-site.xml; | ||
vim hive-site.xml; | vim hive-site.xml; | ||
− | + | ||
元数据配置到msyql,有参考其他的自行设置 | 元数据配置到msyql,有参考其他的自行设置 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
<configuration> | <configuration> | ||
<property> | <property> | ||
第232行: | 第179行: | ||
</property> | </property> | ||
</configuration> | </configuration> | ||
− | |||
− | |||
− | |||
− | + | == 客户端设置master == | |
+ | |||
+ | |||
+ | 01解决版本冲突,用高版本,低版本的可以直接删除 | ||
− | |||
cp $HIVE_HOME/lib/jline-2.12.jar $HADOOP_HOME/share/hadoop/yarn/lib | cp $HIVE_HOME/lib/jline-2.12.jar $HADOOP_HOME/share/hadoop/yarn/lib | ||
− | |||
− | + | ||
+ | 02配置客户端 | ||
在${HIVE_HOME}/conf目录下创建一个名为hive-site.xml的文件,并使用vi编辑器进行编辑: | 在${HIVE_HOME}/conf目录下创建一个名为hive-site.xml的文件,并使用vi编辑器进行编辑: | ||
− | + | ||
cd ${HIVE_HOME}/conf; | cd ${HIVE_HOME}/conf; | ||
touch hive-site.xml; | touch hive-site.xml; | ||
vim hive-site.xml; | vim hive-site.xml; | ||
− | |||
− | |||
− | + | ||
<configuration> | <configuration> | ||
<property> | <property> | ||
第271行: | 第215行: | ||
</property> | </property> | ||
</configuration> | </configuration> | ||
− | |||
− | + | ||
+ | |||
+ | == 启动hive == | ||
+ | |||
cd $HADOOP_HOME/sbin; | cd $HADOOP_HOME/sbin; | ||
第281行: | 第227行: | ||
./mr-jobhistory-daemon.sh start historyserver | ./mr-jobhistory-daemon.sh start historyserver | ||
− | + | ||
start-all.sh;stop-all.sh; | start-all.sh;stop-all.sh; | ||
在所有子节点启动:zkServer.sh start; | 在所有子节点启动:zkServer.sh start; | ||
− | |||
− | + | 01初始化数据库 在slave1上执行 | |
− | |||
schematool -dbType mysql -initSchema | schematool -dbType mysql -initSchema | ||
− | |||
− | |||
− | + | ||
+ | == 02启动hive server** 在slave1上执行 == | ||
+ | |||
+ | |||
hive --service metastore & | hive --service metastore & | ||
− | |||
− | + | == 03启动客户端 == | |
+ | |||
+ | 在master上执行,找不到hadoop就在hive-env.sh中配 | ||
− | |||
hive | hive | ||
− | |||
− | |||
− |
2020年11月28日 (六) 14:52的最新版本
目录
hive远程模式
slave2
01下载MySQL
前提:修改本地源
安装MySQL: yum -y install mysql-community-server
02启动MySQL服务
重启所用修改过的配置文件:
systemctl daemon-reload; systemctl start mysqld;#开启服务 systemctl enable mysqld;#开机自启
若不免密则:
grep "temporary password" /var/log/mysqld.log 04MySQL密码安全测试
设置密码强度为底级:设置密码长度:修改本地密码:
set global validate_password_policy=0; set global validate_password_length=4; alter user 'root'@'localhost' identified by '123456';
退出:\q
05授权及生效
新密码登录MySQL:
mysql -uroot -p123456
创建新用户:
mysql create user 'root'@'%' identified by'123456';
允许远程链接:
mysql grant all privileges on *.*to 'root'@'%' with grant option;
查看 mysql 数据库下的 user表信息:
use mysql; # 切换成mysql数据库 select user,host from user; # 查询用户信息
- 设置远程登录权限
update user set host='%' where host='localhost';
- 刷新配置信息
flush privileges;
刷新权限:
flush privileges;
可以创建数据库了
create database hongyaa;
客户端服务器端都执行master和salve1
01下载解压
mkdir -p /usr/hive
tar -zxvf apache-hive-2.3.4-bin.tar.gz -C /usr/hive
02配置环境变量
(1)首先打开 /etc/profile 文件:
vim /etc/profile
(2)将以下内容添加到配置文件的底部,添加完成输入“:wq”保存退出:
- 配置Hive的安装目录
export HIVE_HOME=/usr/hive/apache-hive-2.1.1-bin
- 在原PATH的基础上加入Hive的bin目录
export PATH=$PATH:$HIVE_HOME/bin
(3)让配置文件立即生效,使用如下命令:
source /etc/profile
(4)检测 Hive 环境变量是否设置成
hive --version
03hive-env.sh配置
2.3 修改配置文件 hive-env.sh
切换到 ${HIVE_HOME}/conf 目录下,将 hive-env.sh.template 文件复制一份并重命名为 hive-env.sh:
cd ${HIVE_HOME}/conf;cp hive-env.sh.template hive-env.sh
修改完成,使用 vi 编辑器进行编辑:
vim hive-env.sh
在文件中配置 **HADOOP_HOME**、**HIVE_CONF_DIR** 以及**HIVE_AUX_JARS_PATH** 参数:
- 配置Hadoop安装路径
HADOOP_HOME=${HADOOP_HOME}
- 配置Hive配置文件存放路径
export HIVE_CONF_DIR=/usr/hive/apache-hive-2.1.1-bin/conf
- 配置Hive运行资源库路径
export HIVE_AUX_JARS_PATH=/usr/hive/apache-hive-2.1.1-bin/lib
配置完成,输入“:wq”保存退出。
slave1元数据配置
将/root/software目录下的 MySQL 驱动包 mysql-connector-java-5.1.47-bin.jar 拷贝到 ${HIVE_HOME}/lib 目录下
wget -P /root/apache-hive-2.1.1-bin/lib http://master:3306/mysql-connectot-java-5.1.47.bin.jar cp /root/mysql-connector-java-5.1.47-bin.jar /usr/hive/apache-hive-2.1.1-bin/lib 在${HIVE_HOME}/conf目录下创建一个名为hive-site.xml的文件,并使用vi编辑器进行编辑:
cd ${HIVE_HOME}/conf;
touch hive-site.xml;
vim hive-site.xml;
元数据配置到msyql,有参考其他的自行设置
<configuration> <property> <name>hive.metastore.warehouse.dir</name> <value>/user/hive_remote/warehouse</value> </property> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://slave2:3306/hive?createDatabaseIfNotExist=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8</value> <description>JDBC connect string for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> <description>Driver class name for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> <description>username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>123456</value> <description>password to use against metastore database</description> </property> </configuration>
客户端设置master
01解决版本冲突,用高版本,低版本的可以直接删除
cp $HIVE_HOME/lib/jline-2.12.jar $HADOOP_HOME/share/hadoop/yarn/lib
02配置客户端
在${HIVE_HOME}/conf目录下创建一个名为hive-site.xml的文件,并使用vi编辑器进行编辑:
cd ${HIVE_HOME}/conf;
touch hive-site.xml;
vim hive-site.xml;
<configuration> <property> <name>hive.metastore.warehouse.dir</name> <value>/user/hive_remote/warehouse</value> </property> <property> <name>hive.metastore.local</name> <value>false</value> </property> <property> <name>hive.metastore.uris</name> <value>thrift://slave1:9083</value> </property> </configuration>
启动hive
cd $HADOOP_HOME/sbin;
./start-dfs.sh ./start-yarn.sh ./mr-jobhistory-daemon.sh start historyserver
start-all.sh;stop-all.sh;
在所有子节点启动:zkServer.sh start;
01初始化数据库 在slave1上执行
schematool -dbType mysql -initSchema
02启动hive server** 在slave1上执行
hive --service metastore &
03启动客户端
在master上执行,找不到hadoop就在hive-env.sh中配
hive