hue(03)、Hue切换MySql作为元数据库

帅比萌擦擦* 提交于 2019-11-30 11:05:44

         Hue服务默认使用的是内嵌的sqlite数据库作为自己的源数据库,sqlite数据库毕竟是属于一款轻型的数据库服务,在实际项目中还是建议切换MySql或者oracle作为元数据库服务,本文将切换MySql作为Hue的元数据库。

一、环境准备

1.MySql服务(共用之前Hive的元数据服务)

2.Hue4.1服务

二、配置工作

 打开hue的/desktop/conf/目录下的 pseudo-distributed.ini文件        

编辑pseudo-distributed.ini文件 ,找到[[database]]这一节,修改信息为hdpc05的机器上的MySql元数

据库服务,修改信息如下:

engine=mysql              //数据引擎类型

host=hdpc05                //数据服务主机

port=3306                      //端口号          

user=root                       //用户名

password=123456      //密码

name=hue                    //数据库名称

三、环境初始化

由于我们之前的信息都存在默认的sqlite数据服务中,我们切换为mysql服务,需要进行初始化的工作

1.在MySql中新建hue的数据库hue

2.初始化hue数据库

在hue服务所在主机,在hue的/bulid/env/bin下执行以下初始化命令:

./hue syncdb 

./hue migrate

四、切换验证

经过上面的配置和和初始化服务,此时Hue切换MySql作为元数据库已经完成,下面我们启动Hue服务验证我们的操作:首先在hue的/bulid/env/bin/目录下执行./supervisor 命令启动hue服务

然后我们使用初始时设置的用户登陆hue服务

然后我们启动hadoop集群,看看切换后连接hdfs等是否正常

连接hadoop集群也正常

五、问题总结

1.Hue提示(1146, "Table 'hue.django_session' doesn't exist")的异常

问题原因:切换完mysql数据库没有初始化数据库

解决方法:初始化数据库服务,见上面的初始化步骤

2.启动后使用原来账户登陆提示账户名或者密码错误

问题原因:因为我们切换了默认数据库,之前的用户信息保存在sqllite中,所以此时使用原来的账户登陆不上去

解决办法:还记的我们在初始化的时候,控制台要求我们 输入的账户的密码么,那就是我们新的Hue服务的超级管理员密码

六、文末总结

        本文主要是切换hue服务的默认数据服务,将sqllite服务切换成了mysql服务,在我们平时使用中没有什么大问题,在线上项目中建议不要使用默认的sqllie,因为sqllie服务真的台轻量了,文中有错误,欢迎大家指出。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!