所选语种没有对应资源,请选择:

本站点使用Cookies,继续浏览表示您同意我们使用Cookies。Cookies和隐私政策>

提示

尊敬的用户,您的IE浏览器版本过低,为获取更好的浏览体验,请升级您的IE浏览器。

升级
案例库

通过loader将HDFS导出数据到mysql过程中,MySQL用户凭证失败

发布时间:  2017-09-18  |   浏览次数:  536  |   下载次数:  0  |   作者:  h00423494  |   文档编号: EKB1000883158

目录

问题描述

操作前需要进行如下配置:

1.获取关系型数据库对应的驱动jar包保存在Loader服务主备节点的lib路径:“${BIGDATA_HOME}/FusionInsight/FusionInsight-Sqoop-1.99.3/FusionInsight-Sqoop-1.99.3/server/webapps/loader/WEB-INF/ext-lib”
2.使用root用户在主备节点分别执行以下命令修改权限:

chown omm:wheel jar包文件名

chmod 600 jar包文件名

3.登录FusionInsight
Manager系统,选择服务管理 > Loader > 更多操作 > 重启服务,输入管理员密码重启Loader服务。

4.在本地MySQL中创建用户123和密码:

然后赋予用户123全部权限:

创建数据库test。

5.在loader中填写字符串,查找到本地ip为192.168.199.235,填写

JDBC驱动程序类:com.mysql.jdbc.Driver

JDBC连接字符串:jdbc:mysql://192.168.199.235:3306/test

点击测试报错,如图:

告警信息

无法通过制定的凭证连接到数据库!

处理过程

在MySQL中使用命令:

查看所有用户和其对应的host,发现用户123的host是loacalhost。

使用命令赋予用户‘123’所有权限,并使用通配符“%”赋予外部主机访问资格:

再到loader中进行导出测试:



根因

MySQL中用户的权限往往习惯建立在本地主机localhost,在赋予权限的时候而导致外部IP无法访问该用户下的数据库。

在FI manager中使用loader导出数据到MySQL中时,是loader的管理ip来访问MySQL用户,属于外部用户ip,如本次实例中时192.168.22.121访问。

建议与总结

在从大数据组件导出数据到关系型数据库时,用户进行权限赋予时host的选择需要选择外部ip可访问的“%”host。