本文是我个人在连接服务器的HBASE过程的一些问题总结。


一、用户和主机名的设置

  1.1 报错:Insufficient permissions(user=Administartor)

  原因:本地hostname为Administrator,而HBASE表的用户没有这个用户,所以报错。

  措施:设置电脑的环境变量,步骤如下:

  1)右击我的电脑->属性->高级系统;

  2)新增变量名HADOOP_USER_NAME,值为mr(HBASE表的用户名

  如图:

  1.2 hosts文件设置

  提示:WARN RecoverableZooKeeper:146 - Unable to create ZooKeeper Connection

  原因:是无法读取配置文件中主机名,可以通过ping IP地址和主机名验证

  在本机的hosts文件设置IP与主机名的映射,如10.23.231.5 mr。

  【问题延伸

  一般经过上述配置后,就可以在cmd的小黑框里ping通IP和主机名(最好两者都试一下),可能出现,能ping通IP地址但是ping不同主机名的情况,代码里可能报错信息为,unkown hostname。

  这种情况可能是所配置的主机名没有生效,解决办法,如图所示:

注意事项:

1)选择正在使用的网络,单击右键选择属性

2)最后导入的是修改后的hosts文件;

二、本地连接服务器HBASE导致的相关错误

  2.1 ERROR Shell:400 - Failed to locate the winutils binary in the hadoop binary path java.io.IOException:Could not locate executable null\bin\winutils.exe in Hadoop binaries.

  2.2 java.io.IOException:HADOOP_HOME or hadoop.home.dir are not set

解决方案:设置路径,具体如图

注意事项:

1)路径是自定义的;

2)在该路径下新建bin文件夹(如:D:\hadoop\bin),然后上网找到winutils.exe放在bin目录中;

3)重启电脑,再次编译即可

三、运行报类找到不到(Hadoop 2.7.3,HBase 1.2.0)

  3.1 运行的时候说找不到org.apache.hadoop.tracing.SpanReceiverHost的类

  原因:依赖的jar没有,

  解决方案:添加hadoop-common-*.jar(对应的版本),最好的是在maven中添加对此jar的依赖。

  3.2 报:Caused by:java.lang.ClassNotFoundException:org.apache.hadoop.fs.FsTracer

  原因:缺jar包

  解决方案:增加对hadoop-hdfs包的依赖。

待续............

使用Java连接HBASE过程中问题总结的更多相关文章

  1. docker 安装 hbase安装 java连接hbase (mac环境)

    docker 安装 https://hub.docker.com/editions/community/docker-ce-desktop-mac 下载地址 下载完之后,安装app一样安装就好 安装完 ...

  2. Java实例化对象过程中的内存分配

    Java实例化对象过程中的内存分配: https://blog.csdn.net/qq_36934826/article/details/82685791 问题引入这里先定义一个很不标准的“书”类,这 ...

  3. 解决 java 使用ssl过程中出现"PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target"

    今天,封装HttpClient使用ssl时报一下错误: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorExc ...

  4. Sqoop import加载HBase过程中,遇到Permission denied: user=root, access=WRITE, inode="/user":hdfs:supergroup:drwxr-xr-x

    在执行hbase sqoop抽取的时候,遇到了一个错误,如下图: 在执行程序的过程中,遇到权限问题很正常,也容易让人防不胜防,有问题就想办法解决,这个是关键. 解决办法如下: 第一步:su hdfs, ...

  5. Java 程序运行过程中的内存分析

    作为 java 程序员,都应该知道 Java 程序运行在 JVM(Java Virtual Machine,Java 虚拟机)上,可以把 JVM 理解成 Java 程序和操作系统之间的桥梁,JVM 实 ...

  6. java连接hbase时出现....is accessible from more than one module:

    今天在用java程序连接hbase时,出现错误,The package org.apache.hadoop.hbase is accessible from more than one module: ...

  7. Java连接Hbase异常

    Exception in thread "main" org.apache.hadoop.hbase.client.RetriesExhaustedException: Faile ...

  8. Java收发邮件过程中具体的功能是怎么实现的

    SMTP协议 用户连上邮件服务器后,要想给它发送一封电子邮件,需要遵循一定的通迅规则,SMTP协议就是用于定义这种通讯规则的. 因而,通常我们也把处理用户smtp请求(邮件发送请求)的邮件服务器称之为 ...

  9. 问题总结:mysql和javaweb工程连接的过程中容易产生的问题

    问题背景:自己在本机的mysql8瘫痪了,将Oracle中的数据迁移到mysql之后,配置好javaweb工程和虚拟机上的远程Mysql连接的文件之后:遇见了无法访问的问题 具体的配置: dataso ...

随机推荐

  1. webpack3升级为webpack4

    写在前面的话:为什么要升级,因为公司目前的项目使用webpack3,但是因为是多页应用,入口估计有一百多个,开发模式下慢得不像话,修改一个文件需要十几秒才编译好,之前的解决方案是减少入口,但是要调试其 ...

  2. phpcms 容许英文目录有空格

    在PHPCMS添加栏目里面,有个选项是 英文目录,这里目录可以用作伪静态功能.这么英文不能有空格等特殊字符.但是如果页面中需要引用包含空格的字符呢,例如,关于我们页面,我要显示英文about us.那 ...

  3. ubuntu16.04 CUDA, CUDNN 安装

    这次介绍的是使用 tensorflow1.8, cuda9.0, cudnn7.0的版本 https://developer.nvidia.com/cuda-90-download-archive 下 ...

  4. Mac环境搭建以太坊私有链

    原文地址: 石匠的blog 为了测试以太坊智能合约,最方便的是在本地搭建一个以太坊私有链.在mac上搭建环境主要需要以下步骤. geth安装 geth是go-ethereum的简写,是一个用go语言编 ...

  5. 北航MOOC系统Android客户端NABC

    北航MOOC手机客户端NABC分析 1) N (Need 需求) MOOC是Massive Open Online Course的缩写,通常被译为大型开放式网络课程,它最早在08年的时候由一位加拿大的 ...

  6. Linux 下Web环境搭建————redis

    1.安装编译工具(yum -y install make gcc gcc-c++ ncurses-devel)2 2.安装tcl依赖 yum -y install tcl 3.上传redis安装包并解 ...

  7. 四则运算《《《《SQL出题

    设计思路: 这次要用数据库存储题目,我想到的是用SQL server数据库,用dataGridView控件读取数据. 具体实现: DBCon.cs 1 using System; 2 using Sy ...

  8. Android笔记-5-EditText密码和Checkbox二选一

    EditText密码:明文和密文 密文: public class MainActivity extends Activity { private EditText password = null; ...

  9. JQuery TextArea的取值与赋值问题---(textarea中回车清空问题)——个人转载整理

    JQuery TextArea的取值与赋值问题---(textarea中回车清空问题) JQuery TextArea的取值与赋值问题 首先,说明这不是一个简单的问题! 先说取值: $("# ...

  10. Delphi中比较两个对象是否一致及地址是否相同[转]

    在delphi中,C#也是如此,对象的地址与对象变量(引用)的地址不是同一个概念.要加以区别. procedure TForm1.btn1Click(Sender: TObject); var    ...