Ubuntu18.04 MySQL+hive安装

参考文档、博客:
https://blog.csdn.net/chengyuqiang/article/details/76757602
https://www.jb51.net/article/172456.htm
https://blog.csdn.net/qq_41822647/article/details/84503869

1.hadoop搭建

推荐购买此书进行安装学习https://item.jd.com/12503061.html

2.Mysql安装

2.1

在 Ubuntu 18.04 中,默认情况下,只有最新版本的 MySQL 包含在 APT 软件包存储库中,要安装它,只需更新服务器上的包索引并安装默认包 apt-get
最好的话把Ubuntu的软件源为国内的,参考https://blog.csdn.net/baidu_36602427/article/details/86551862
然后更新软件目录

sudo apt-get update

我的hadoop配置是3个节点的,所以我把MySQL和hive都安装在主节点node1上

sudo apt install mysql-server
#或者
sudo apt-get install mysql-server-5.7

获取:1 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial/main amd64 insserv amd64 1.14.0-5ubuntu3 [38.2 kB]
获取:2 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial/main amd64 sysv-rc all 2.88dsf-59.3ubuntu2 [18.2 kB]
获取:3 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial-updates/main amd64 mysql-common all 5.7.27-0ubuntu0.16.04.1 [14.7 kB]
获取:4 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial/main amd64 initscripts amd64 2.88dsf-59.3ubuntu2 [24.4 kB]
获取:5 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial/main amd64 libaio1 amd64 0.3.110-2 [6,356 B]
获取:6 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial-updates/main amd64 mysql-client-core-5.7 amd64 5.7.27-0ubuntu0.16.04.1 [6,383 kB]
获取:7 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial-updates/main amd64 mysql-client-5.7 amd64 5.7.27-0ubuntu0.16.04.1 [1,815 kB]
获取:8 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial-updates/main amd64 mysql-server-core-5.7 amd64 5.7.27-0ubuntu0.16.04.1 [7,663 kB]
获取:9 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial-updates/main amd64 libevent-core-2.0-5 amd64 2.0.21-stable-2ubuntu0.16.04.1 [70.6 kB]
获取:10 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial-updates/main amd64 mysql-server-5.7 amd64 5.7.27-0ubuntu0.16.04.1 [2,754 kB]
获取:11 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial/main amd64 libhtml-template-perl all 2.95-2 [60.4 kB]
获取:12 http://mirrors.tuna.tsinghua.edu.cn/ubuntu xenial-updates/main amd64 mysql-server all 5.7.27-0ubuntu0.16.04.1 [10.2 kB]
已下载 18.9 MB,耗时 4秒 (4,427 kB/s)
正在预设定软件包 ...
正在选中未选择的软件包 insserv。
(正在读取数据库 ... 系统当前共安装有 135994 个文件和目录。)
正准备解包 .../0-insserv_1.14.0-5ubuntu3_amd64.deb  ...
正在解包 insserv (1.14.0-5ubuntu3) ...
正在选中未选择的软件包 sysv-rc。
正准备解包 .../1-sysv-rc_2.88dsf-59.3ubuntu2_all.deb  ...
正在解包 sysv-rc (2.88dsf-59.3ubuntu2) ...
正在选中未选择的软件包 mysql-common。
正准备解包 .../2-mysql-common_5.7.27-0ubuntu0.16.04.1_all.deb  ...
正在解包 mysql-common (5.7.27-0ubuntu0.16.04.1) ...
正在选中未选择的软件包 initscripts。
正准备解包 .../3-initscripts_2.88dsf-59.3ubuntu2_amd64.deb  ...
正在解包 initscripts (2.88dsf-59.3ubuntu2) ...
被已安装的软件包 sysvinit-utils (2.88dsf-59.10ubuntu1) 中的文件替换了...
正在选中未选择的软件包 libaio1:amd64。
正准备解包 .../4-libaio1_0.3.110-2_amd64.deb  ...
正在解包 libaio1:amd64 (0.3.110-2) ...
正在选中未选择的软件包 mysql-client-core-5.7。
正准备解包 .../5-mysql-client-core-5.7_5.7.27-0ubuntu0.16.04.1_amd64.deb  ...
正在解包 mysql-client-core-5.7 (5.7.27-0ubuntu0.16.04.1) ...
正在选中未选择的软件包 mysql-client-5.7。
正准备解包 .../6-mysql-client-5.7_5.7.27-0ubuntu0.16.04.1_amd64.deb  ...
正在解包 mysql-client-5.7 (5.7.27-0ubuntu0.16.04.1) ...
正在选中未选择的软件包 mysql-server-core-5.7。
正准备解包 .../7-mysql-server-core-5.7_5.7.27-0ubuntu0.16.04.1_amd64.deb  ...
正在解包 mysql-server-core-5.7 (5.7.27-0ubuntu0.16.04.1) ...
正在选中未选择的软件包 libevent-core-2.0-5:amd64。
正准备解包 .../8-libevent-core-2.0-5_2.0.21-stable-2ubuntu0.16.04.1_amd64.deb  ...
正在解包 libevent-core-2.0-5:amd64 (2.0.21-stable-2ubuntu0.16.04.1) ...
正在设置 mysql-common (5.7.27-0ubuntu0.16.04.1) ...
update-alternatives: 使用 /etc/mysql/my.cnf.fallback 来在自动模式中提供 /etc/mysql/my.cnf (my.cnf)
正在选中未选择的软件包 mysql-server-5.7。
(正在读取数据库 ... 系统当前共安装有 136240 个文件和目录。)
正准备解包 .../mysql-server-5.7_5.7.27-0ubuntu0.16.04.1_amd64.deb  ...
正在解包 mysql-server-5.7 (5.7.27-0ubuntu0.16.04.1) ...
正在选中未选择的软件包 libhtml-template-perl。
正准备解包 .../libhtml-template-perl_2.95-2_all.deb  ...
正在解包 libhtml-template-perl (2.95-2) ...
正在选中未选择的软件包 mysql-server。
正准备解包 .../mysql-server_5.7.27-0ubuntu0.16.04.1_all.deb  ...
正在解包 mysql-server (5.7.27-0ubuntu0.16.04.1) ...
正在设置 libhtml-template-perl (2.95-2) ...
正在处理用于 ureadahead (0.100.0-20) 的触发器 ...
正在处理用于 libc-bin (2.27-3ubuntu1) 的触发器 ...
正在设置 libaio1:amd64 (0.3.110-2) ...
正在设置 libevent-core-2.0-5:amd64 (2.0.21-stable-2ubuntu0.16.04.1) ...
正在处理用于 systemd (237-3ubuntu10.12) 的触发器 ...
正在处理用于 man-db (2.8.3-2ubuntu0.1) 的触发器 ...
正在设置 insserv (1.14.0-5ubuntu3) ...
正在设置 mysql-client-core-5.7 (5.7.27-0ubuntu0.16.04.1) ...
正在设置 mysql-server-core-5.7 (5.7.27-0ubuntu0.16.04.1) ...
正在设置 sysv-rc (2.88dsf-59.3ubuntu2) ...
正在设置 mysql-client-5.7 (5.7.27-0ubuntu0.16.04.1) ...
正在设置 initscripts (2.88dsf-59.3ubuntu2) ...
正在设置 mysql-server-5.7 (5.7.27-0ubuntu0.16.04.1) ...
update-alternatives: 使用 /etc/mysql/mysql.cnf 来在自动模式中提供 /etc/mysql/my.cnf (my.cnf)
Renaming removed key_buffer and myisam-recover options (if present)
Created symlink /etc/systemd/system/multi-user.target.wants/mysql.service → /lib/systemd/system/mysql.service.
正在设置 mysql-server (5.7.27-0ubuntu0.16.04.1) ...
正在处理用于 libc-bin (2.27-3ubuntu1) 的触发器 ...
正在处理用于 ureadahead (0.100.0-20) 的触发器 ...
正在处理用于 systemd (237-3ubuntu10.12) 的触发器 ...
yeu@node1:~$

(注:我的MySQL版本是5.7.27-0ubuntu0.16.04.1 (Ubuntu),我是把Ubuntu的软件源改为国内输入以上命令运行的,在运行中是有提示设置root密码的。而听说在新版本MySQL安装是没有了自动弹出提示设置root密码的,遇此问题的读者最好求下度娘233参考https://blog.csdn.net/qq_38737992/article/details/81090373 )

2.2 数据库初始化

为了确保数据库的安全性、正常运转和与hive正常连接,对数据库进行初始化操作。这个初始化操作涉及下面5个步骤。

  1. 安装验证密码插件。
  2. 设置root管理员在数据库中的专有密码。
  3. 随后删除匿名账户,并使用root管理员从远程登录数据库,以确保数据库上运行的业务的安全性。
  4. 不删除默认的测试数据库,不取消测试数据库的一系列访问权限。
  5. 刷新授权列表,让初始化的设定立即生效。
mysql_secure_installation
yeu@node1:~$ mysql_secure_installationSecuring the MySQL server deployment.Enter password for user root: VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin? #要安装验证密码插件吗?Press y|Y for Yes, any other key for No: N  # 这里我选择N
Using existing password for root.
Change the password for root ? ((Press y|Y for Yes, any other key for No) : yNew password:  #输入要为root管理员设置的数据库密码Re-enter new password: #再次输入密码
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.Remove anonymous users? (Press y|Y for Yes, any other key for No) : y #删除匿名账户
Success.Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.Disallow root login remotely? (Press y|Y for Yes, any other key for No) : n #禁止root管理员从远程登录,这里我没有禁止... skipping.
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.Remove test database and access to it? (Press y|Y for Yes, any other key for No) : n #删除test数据库并取消对它的访问权限,这里选择不... skipping.
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y #刷新授权表,让初始化后的设定立即生效
Success.All done!
yeu@node1:~$

检查mysql服务状态:

systemctl status mysql

2.3 配置mysql允许远程访问

编辑mysqld.cnf 配置文件

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

注释掉bind-address = 127.0.0.1

保存退出,然后进入mysql数据库,执行授权命令:

  1. mysql -u root -p
  2. mysql> GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘你的密码’ WITH GRANT OPTION;
  3. mysql> flush privileges; # 刷新权限
  4. mysql> exit

然后执行exit命令退出mysql服务,再执行如下命令重启mysql:

sudo systemctl restart mysql

现在Windows下可以使用Navicat图形化工具远程连接Ubuntu下的MySQL数据库,输入刚授权远程权限的密码。

3.hive安装

安装hive前,要同节点里已安装上面配置的MySQL和有MySQL JDBC驱动器(驱动文件)
这里提供以下操作的所需文件下载,链接: https://pan.baidu.com/s/1F2rA55SW4e0Nm16CtRF4tQ 提取码: vwrp

3.1 解压

这里采用的hive版本是2.3.3,下载好后解压hive包

为了之后写路径方便,这里把apache-hive-2.3.3-bin文件夹设置软链接

3.2 配置环境变量

vi ~/.bashrc

在文件末尾写上hive的安装路径

export HIVE_HOME=/home/yeu/software/hive
export PATH=$HIVE_HOME/bin:$PATH

更新环境变量

source ~/.bashrc

查看hive版本号,如果有输出出来的就是已安装成功

3.3 配置hive-env.sh

进入目录cd hive/conf/,首先新建一个空文件hive-env.sh

$ touch hive-env.sh

接着复制hive-env.sh.template,编写

$ cp hive-env.sh.template hive-env.sh
$ vi hive-env.sh

找到写有hadoop路径的那行,去掉注释然后把后面的路径改为节点上安装hadoop的路径

HADOOP_HOME=/home/yeu/software/hadoop

3.4 配置hive-site.xml

也是在conf里,新建文件hive-site.xml,编写

$ touch hive-site.xml
$ vi hive-site.xml

编写mysql数据库的连接配置:

<?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://node1:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false</value>   #&amp; 并的意思 ,这行的node1为这节点主机的名称<description>JDBC connect string for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value>   #MySQL JDBC驱动文件<description>Driver class name for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionUserName</name><value>root</value> #你的MySQL账号名,用普通账号要先在MySQL为那普通账号设置授权才行,我这里是用root账号<description>username to use against metastore database</description></property><property><name>javax.jdo.option.ConnectionPassword</name><value>你的MySQL密码</value><description>password to use against metastore database</description></property><!-- 下面两个的是修改临时文件夹的路径 --><property><name>hive.exec.local.scratchdir</name><value>/home/yeu/software/iotmp</value><description>Local scratch space for Hive jobs</description></property><property><name>hive.downloaded.resources.dir</name><value>/home/yeu/software/iotmp</value><description>Temporary local directory for added resources in the remote file system.</description></property></configuration>

我的用户名是yeu,所以在该路径下,新建了iotmp文件夹,并授权

$ mkdir -p /home/yeu/software/iotmp
$ chmod -R 775 /home/yeu/software/iotmp

3.5 修改hive-config.sh

进入hive下的bincd /home/yeu/software/hive/bin

sudo vi hive-config.sh

在该文件的最后面添加Java(jdk)、hadoop、hive的路径:

export JAVA_HOME=/home/yeu/software/jdk
export HADOOP_HOME=/home/yeu/software/hadoop
export HIVE_HOME=/home/yeu/software/hive

(不进行3.5操作在最后也能进行之后的初始化hive操作)

3.6 MySQL JDBC驱动器

这里采用的MySQL驱动文件是mysql-connector-java-5.1.46-bin.jar,也可以下载用MySQL官网的MySQL5版本的最新驱动

解压出来后放到hive的lib文件夹下

3.7 在HDFS中创建目录和设置权限

启动hadoop,在hadoop中创建hive需要用到的目录并设置权限。

$ start-all.sh #启动hadoop
$ hdfs dfs -mkdir /tmp
$ hdfs dfs -mkdir -p /user/hive/warehouse
$ hdfs dfs -chmod g+w /tmp
$ hdfs dfs -chmod g+w /user/hive/warehouse

3.8 初始化meta数据库

进入/home/yeu/software/hive/lib目录(其实在任意目录都能执行),初始化Hive元数据对应的MySQL数据库:

schematool -initSchema -dbType mysql
yeu@node1:~/software/hive/lib$ schematool -initSchema -dbType mysql
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/yeu/software/apache-hive-2.3.3-bin/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/yeu/software/hadoop-2.7.3/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]
Metastore connection URL:    jdbc:mysql://node1:3306/hive?createDatabaseIfNotExist=true&useSSL=false
Metastore Connection Driver :    com.mysql.jdbc.Driver
Metastore connection User:   root
Starting metastore schema initialization to 2.3.0
Initialization script hive-schema-2.3.0.mysql.sql
Initialization script completed
schemaTool completed
yeu@node1:~/software/hive/lib$

初始化成功
注:之前已成功初始化meta数据库的,如果想重新再初始化meta数据库的要先删除与其设置连接的MySQL里的hive数据库再来初始化,不然会报错

3.9 启动Hive

启动hive前,确保hadoop集群启动

$ start-all.sh
$ hive


创建个hive_1数据库
hive已正式安装成功

累死了

Ubuntu18.04 MySQL+hive安装相关推荐

  1. Ubuntu18.04环境下安装ERPNext 12

    前言 之前提到准备安装ERPNext进行测试,看看是否符合公司的业务形式和需求.在先后尝试了CentOS 8,Ubuntu20.04后,均未成功,因此将目标定在了CentOS 7上.结果,尝试一番又以 ...

  2. ubuntu18.04在终端安装pip3时404 Not Found [IP: 91.189.91.24 80]_木绿的博客-CSDN博客

    ubuntu18.04在终端安装pip3时404 Not Found [IP: 91.189.91.24 80]_木绿的博客-CSDN博客 解决办法如下 亲测可用 sudo apt-get updat ...

  3. Ubuntu18.04.3虚拟机安装步骤图文教程

    虚拟机的安装步骤就不教学了! 自行百度! 接下来 教学ubuntu18.04.3desktop_amd64版本的安装和配置教程 软件下载地址详细介绍:ubuntu 18.04.3 下载速度很快:25M ...

  4. ubuntu18.04 Qt Creator 安装+ROS Qt Creator Plug-in 插件安装笔记

    ubuntu18.04 Qt Creator 安装+ROS Qt Creator Plug-in 插件安装笔记: 一.Qt Creator 5.10安装 官网下载地址: http://download ...

  5. ubuntu 13.04 mysql_Ubuntu 13.04 MySQL Proxy安装与配置

    Ubuntu 13.04 MySQL Proxy安装与配置 安装环境 Ubuntu 13.04 Shell $ sudo apt-get install mysql-proxy 1 $sudoapt- ...

  6. ubuntu18.04+nvidia显卡安装+cuda9.0+cudnn7+pycharm2018.2专业版激活+anaconda3+tensorflow-gpu1.6.0+keras+opencv3

    写文的目的:笔记本和台式机的安装是略有不同的,为了以后查阅方便,记录下安装细节 目标:在台式机上安装上ubuntu18.04+nvidia显卡安装+cuda9.0+cudnn7+anaconda3+t ...

  7. Ubuntu18.04+Halcon18.11安装教程

    Ubuntu18.04+Halcon18.11安装教程 HALCON下载 建议到HALCON官方下载页选择linux版本下载,压缩包名为MVTec_HALCON_Progress-18.11.0.1- ...

  8. ubuntu18.04下hadoop安装与集群配置

    ubuntu18.04下hadoop安装与集群配置 hadoop安装_单机/伪分布式配置 环境 创建hadoop用户 更新apt 安装SSH.配置SSH无密码登陆 安装Java环境 安装 Hadoop ...

  9. 腾讯云Ubuntu18.04.4上安装brat文本标注工具(2020年9月)

    参考博文: https://zhuanlan.zhihu.com/p/65101293 https://zhuanlan.zhihu.com/p/92334491 https://www.cnblog ...

最新文章

  1. Topaz Video Enhance AI中文版
  2. .NET Core 3.0特性初探:C# 8、WPF、Windows Forms、EF Core
  3. c#rs232与三菱通讯_MCGS 与 FX3U PLC 之间的无线通讯实例
  4. js实现对象完美克隆
  5. iview 表单提交之前验证是否符合条件
  6. MariaDB 双主复制的配置
  7. Codeforce1311B. WeirdSort (冒泡排序)
  8. 推荐算法--推荐系统架构(06)
  9. 开源内容管理系统 php mysql_十大免费PHP+MySql平台内容管理系统推荐
  10. 23. Navigator javaEnabled() 方法
  11. GNS3 使用错误 ( Dynamips error when running command 'nio create_udp )
  12. iec611313标准下载_IEC 61730-1-2016
  13. 医疗系统流程软件测试用例,医疗管理系统案例测试用例.doc
  14. 天线工程手册_弱电工程人员书籍推荐
  15. 《葬经》郭璞 高清彩色版手抄欣赏
  16. java多线程聊天室_JAVA多线程网络聊天室代码
  17. vue项目页面的打印和下载PDF加loading效果(加水印)
  18. DTAS 3D在车身公差分析中的应用案例
  19. 《失控》书摘与读书笔记
  20. Easy-x的基础教程使用介绍

热门文章

  1. 运用PowerDesigner的反向工程,可以导入SQL脚本,从而生成物理模型
  2. sohc和vtec的关系
  3. 小白都能看懂的关于Mixins机制的理解
  4. Qt开发奇葩问题总集
  5. 深入浅出XDL(二):embedding
  6. 17.0~17.9 通知,系统通知,推送消息
  7. 什么是拓扑(Topology) - 3D 角色 建模过程中的 中的术语:拓扑
  8. 微信打开网址提示已停止访问该网页 怎么办?
  9. eas系统服务器地址,金蝶eas服务器地址设置
  10. BZOJ2152 聪聪可可(点分治)