FIRST
安装mysql
# su权限,在你相放包的目录下,顺序执行下面三条
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
提示错误,The GPG keys listed for the "MySQL 5.7 Community Server" ……
先导入密钥:
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
然后
yum -y install mysql-community-server
出现 Complete! 表示成功。
耗时约2分钟
# 启动mysql
systemctl start mysqld.service
#查看初始密码
grep "password" /var/log/mysqld.log
进入mysql,使用上面得到的密码
修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY ' root3306';
报错:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
因为密码不符合规范,修改为复杂密码即可。
设置允许外网连接
grant all on *.* to root@'%' identified by 'root的密码';
设置开机启动
systemctl enable mysqld
NEXT
安装hive
下载:
wget https://dlcdn.apache.org/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz --no-check-certificate
速度较慢。用https://downloads.apache.org快些
解压得到:apache-hive-3.1.2-bin ,改名为hive方便用
环境变量配置
vi /etc/profile
export HIVE_HOME=/usr/local/hive
export HIVE_CONF_DIR=$HIVE_HOME/conf
export PATH=$PATH:$HIVE_HOME/bin
source /etc/profile
HDFS上创建目录
切到hadoop权限,启动hadoop
hdfs dfs -mkdir -p /usr/local/hive/warehouse
hdfs dfs -chmod -R 777 /usr/local/hive/warehouse
hdfs dfs -mkdir -p /tmp/hive
hdfs dfs -chmod -R 777 /tmp/hive
切到root,在hive安装目录下
mkdir tmp
chmod -R 777 tmp/
mkdir log
修改hive-site.xml
默认为 hive-default.xml.template 先修改或者先cp为hive-site.xml
# 找到
<name>hive.metastore.warehouse.dir</name>
# 修改值
<value>/usr/local/hive/warehouse</value>
# 找到
<name>javax.jdo.option.ConnectionURL</name>
# 修改值(提前建立hive数据库)
<value>jdbc:mysql://hadoop-ma:3306/hive?characterEncoding=UTF-8</value>
# 这里hadoop-ma是主机名字,需要提前在hosts里面做映射。参考hadoop配置文章
# 找到
<name>javax.jdo.option.ConnectionDriverName</name>
# 修改值
<value>com.mysql.cj.jdbc.Driver</value>
# 找到
<name>javax.jdo.option.ConnectionUserName</name>
# 修改值 或其它mysql用户
<value>root</value>
# 其它:
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>mysql password</value>
</property>
<property> --元数据服务地址
<name>hive.metastore.uris</name>
<value>thrift://hadoop-ma:9083</value>
</property>
<property>
<name>hive.server2.thrift.bind.host</name>
<value>hadoop-ma</value>
</property>
vi conf/hive-env.sh.template
HADOOP_HOME=/usr/local/Hadoop
export HIVE_CONF_DIR=/usr/local/hive/conf
cp 或者mv 变成hive-env.sh
安装mysql-connector
wget https://cdn.mysql.com//Downloads/Connector-J/mysql-connector-java-8.0.28.tar.gz
放到hive根目录下的lib文件夹当中
启动
初始化
schematool -initSchema -dbType mysql
启动元数据服务
hive --service metastore &
报:
org.apache.thrift.transport.TTransportException: Could not create ServerSocket on address 0.0.0.0/0.0.0.0:9083.
kill后重启即可。
报时区问题 ,参照:https://blog.csdn.net/weixin_39594296/article/details/113119222
启动server2服务
hive --service hiveserver2 &
以上,如果报错,Unable to determine Hadoop version information. ‘hadoop version’ returned:
是因为hadoop3.3和hive2不匹配,修改bin/hive文件,把红色部分改成3
进入hive客户端测试
./hive
show database;
create table …
Insert into ….
插入成功则hive安装成功
python读写
install pyhive
sacl安装异常,则下载whl文件直接安装
pip install C:\Users\admin\AppData\Roaming\Python\Python37\site-packages\sasl-0.3.1-cp37-cp37m-win_amd64.whl