參考文檔
http://dblab.xmu.edu.cn/blog/install-hive/ Ubuntu安裝hive,並配置mysql作爲元數據庫
http://www.bkjia.com/Mysql/1093428.html Your password does not satisfy the current policy requirements,hy000satisfy
Hive安裝
Hive只要安裝在NameNode上,其餘節點無需安裝配置Hive
先安裝Mysql,在安裝Hive,最後配置數據庫
Mysql安裝
官網下載RPM安裝包
RPM安裝
#terminal
mkdir mysql
cp mysql-5.7.17-1.el5.x86_64.rpm-bundle.tar mysql
cd mysql
tar xvf mysql-5.7.17-1.el5.x86_64.rpm-bundle.tar
sudo rpm -ivh mysql-community-common-5.7.17-1.el5.x86_64.rpm --nodeps --force
sudo rpm -ivh mysql-community-libs-5.7.17-1.el5.x86_64.rpm --nodeps --force
sudo rpm -ivh mysql-community-devel-5.7.17-1.el5.x86_64.rpm --nodeps --force
sudo rpm -ivh mysql-community-client-5.7.17-1.el5.x86_64.rpm --nodeps --force
sudo rpm -ivh mysql-community-server-5.7.17-1.el5.x86_64.rpm --nodeps --force
修改用戶名密碼
sudo /etc/init.d/mysqld start
sudo /etc/init.d/mysqld stop
sudo killall -TERM mysqld
sudo mysqld_safe --skip-grant-tables --skip-networking &
mysql -u root
#sql
use mysql;
update user set authentication_string = password('123456'), password_expired = 'N', password_last_changed = now() where user = 'root';
exit;
#terminal
sudo /etc/init.d/mysqld restart
mysql -u root -p
#sql
select user();
set global validate_password_policy=0;
set global validate_password_length=1;
ALTER USER USER() IDENTIFIED BY '123456';
exit;
Hive安裝
#解壓hive
cd ~
sudo tar -zxvf ./apache-hive-1.2.1-bin.tar.gz -C /usr/local # 解壓到/usr/local中
cd /usr/local/
sudo mv apache-hive-1.2.1-bin hive # 將文件夾名改爲hive
sudo chown -R hadoop:hadoop hive # 修改文件權限
vim ~/.bashrc
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
source ~/.bashrc
修改配置文件
#修改配置文件
cd /usr/local/hive/conf
cp hive-default.xml.template hive-default.xml
vim hive-site.xml #添加如下xml內容
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</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>hive</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hive</value>
<description>password to use against metastore database</description>
</property>
</configuration>
mysql jdbc + 配置mysql
配置mysql作爲元數據庫
cd ~
tar -zxvf mysql-connector-java-5.1.40.tar.gz
cp mysql-connector-java-5.1.40/mysql-connector-java-5.1.40-bin.jar /usr/local/hive/lib #將mysql-connector-java-5.1.40-bin.jar拷貝到/usr/local/hive/lib目錄下
mysql -u root -p
#sql
create database hive;
grant all on *.* to hive@localhost identified by 'hive';
flush privileges;
遇到的問題
rpm安裝
rpm -ivh MySQL-xxx.rpm
error: Failed dependencies:
糾結了半天,終於找到了解決方法:(感謝提供相關文章的博友)
在安裝包後面加兩個參數,如
rpm -ivh MySQL-server-5.5.24-1.linux2.6.x86_64.rpm --nodeps --force
加上那兩個參數的意義就在於,
安裝時不再分析包之間的依賴關係而直接安裝,
也就不會再提示error: Failed dependencies:這樣的錯誤了
Mysql5.7修改root密碼
版本更新,原來user裏的password字段已經變更爲authentication_string
版本更新 緣故,好多網上的教程都不適用了,甚至連官網的文檔也不是能夠順利操作的。
如果 MySQL 正在運行,首先殺之: killall -TERM mysqld。
運行mysqld_safe –skip-grant-tables &
如果此時不想被遠程連接:mysqld_safe –skip-grant-tables –skip-networking &
使用mysql連接server
更改密碼:update user set authentication_string = password(‘123456’), password_expired = ‘N’, password_last_changed = now() where user = ‘root’;
*特別提醒注意的一點是,新版的mysql數據庫下的user表中已經沒有Password字段了
而是將加密後的用戶密碼存儲於authentication_string字段
修改完畢。重啓
http://www.bkjia.com/Mysql/1093428.html
若出現“ERROR 1819 (HY000): Your password does not satisfy the current policy requirements”(重啓後報錯)
set global validate_password_policy=0;
set global validate_password_length=1;
ALTER USER USER() IDENTIFIED BY ‘123456’;