本文章是系列初级教程,欢迎大家讨论留言,和大家一起学习进步。好好学习,天天向上 :)。

为了方便调试在笔记本上搭建了一套hbase 源码过程如下:

1、下载源码, 建议在hbase 官网下载  https://hbase.apache.org/downloads.html

我选择的是 2.1.1  https://www.apache.org/dyn/closer.lua/hbase/2.1.1/hbase-2.1.1-src.tar.gz

从github 上下载太慢了,一直不成功,果断放弃。

网上也有说需要安装Cygwin ,我也安装了,最后发现,不用安装也可以调试hbase Hmaster,如果需要调试 shell 需要安装(方法略) 。

2、解压,用idea打开。解压这个就不用说了,网上也有说,需要编译的,我也没做,好像也成功了。

打开之后需要下载到本地仓库一些Jar包,这个有点慢。

3、配置主服务的启动,注意路径要改为你自己源码所在位置。

4、配置hbase shell 启动,注意路径要改为你自己源码所在位置。

5、第一次启动时会报找不到配置文件,提示

log4j:WARN No appenders could be found for logger (TestDemo).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

这个让我费了一点时间,主要是需要注意把 hbase-server 这个模块增加一个resources 的文件夹再增加一个log4j.properties 并把 resources 文件夹设置为 资源 。

打开 idea File  ->  Project Structure  -> Modules

log4j.properties  代码 如下  其中 hbase.log.dir 可以自己指定。


hbase.root.logger=INFO,console
hbase.security.logger=INFO,console
hbase.log.dir=C:/log4j/log
hbase.log.file=hbase.log# Define the root logger to the system property "hbase.root.logger".
log4j.rootLogger=${hbase.root.logger}# Logging Threshold
log4j.threshold=ALL#
# Daily Rolling File Appender
#
log4j.appender.DRFA=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DRFA.File=${hbase.log.dir}/${hbase.log.file}# Rollver at midnight
log4j.appender.DRFA.DatePattern=.yyyy-MM-dd# 30-day backup
#log4j.appender.DRFA.MaxBackupIndex=30
log4j.appender.DRFA.layout=org.apache.log4j.PatternLayout# Pattern format: Date LogLevel LoggerName LogMessage
log4j.appender.DRFA.layout.ConversionPattern=%d{ISO8601} %-5p [%t] %c{2}: %m%n# Rolling File Appender properties
hbase.log.maxfilesize=256MB
hbase.log.maxbackupindex=20# Rolling File Appender
log4j.appender.RFA=org.apache.log4j.RollingFileAppender
log4j.appender.RFA.File=${hbase.log.dir}/${hbase.log.file}log4j.appender.RFA.MaxFileSize=${hbase.log.maxfilesize}
log4j.appender.RFA.MaxBackupIndex=${hbase.log.maxbackupindex}log4j.appender.RFA.layout=org.apache.log4j.PatternLayout
log4j.appender.RFA.layout.ConversionPattern=%d{ISO8601} %-5p [%t] %c{2}: %m%n#
# Security audit appender
#
hbase.security.log.file=SecurityAuth.audit
hbase.security.log.maxfilesize=256MB
hbase.security.log.maxbackupindex=20
log4j.appender.RFAS=org.apache.log4j.RollingFileAppender
log4j.appender.RFAS.File=${hbase.log.dir}/${hbase.security.log.file}
log4j.appender.RFAS.MaxFileSize=${hbase.security.log.maxfilesize}
log4j.appender.RFAS.MaxBackupIndex=${hbase.security.log.maxbackupindex}
log4j.appender.RFAS.layout=org.apache.log4j.PatternLayout
log4j.appender.RFAS.layout.ConversionPattern=%d{ISO8601} %p %c: %m%n
log4j.category.SecurityLogger=${hbase.security.logger}
log4j.additivity.SecurityLogger=false
#log4j.logger.SecurityLogger.org.apache.hadoop.hbase.security.access.AccessController=TRACE
#log4j.logger.SecurityLogger.org.apache.hadoop.hbase.security.visibility.VisibilityController=TRACE#
# Null Appender
#
log4j.appender.NullAppender=org.apache.log4j.varia.NullAppender#
# console
# Add "console" to rootlogger above if you want to use this
#
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{ISO8601} %-5p [%t] %c{2}: %m%nlog4j.appender.asyncconsole=org.apache.hadoop.hbase.AsyncConsoleAppender
log4j.appender.asyncconsole.target=System.err# Custom Logging levelslog4j.logger.org.apache.zookeeper=INFO
#log4j.logger.org.apache.hadoop.fs.FSNamesystem=DEBUG
log4j.logger.org.apache.hadoop.hbase=INFO
# Make these two classes INFO-level. Make them DEBUG to see more zk debug.
log4j.logger.org.apache.hadoop.hbase.zookeeper.ZKUtil=INFO
log4j.logger.org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher=INFO
#log4j.logger.org.apache.hadoop.dfs=DEBUG
# Set this class to log INFO only otherwise its OTT
# Enable this to get detailed connection error/retry logging.
# log4j.logger.org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation=TRACE# Uncomment this line to enable tracing on _every_ RPC call (this can be a lot of output)
#log4j.logger.org.apache.hadoop.ipc.HBaseServer.trace=DEBUG# Uncomment the below if you want to remove logging of client region caching'
# and scan of hbase:meta messages
# log4j.logger.org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation=INFO
# log4j.logger.org.apache.hadoop.hbase.client.MetaScanner=INFO# Prevent metrics subsystem start/stop messages (HBASE-17722)
log4j.logger.org.apache.hadoop.metrics2.impl.MetricsConfig=WARN
log4j.logger.org.apache.hadoop.metrics2.impl.MetricsSinkAdapter=WARN
log4j.logger.org.apache.hadoop.metrics2.impl.MetricsSystemImpl=WARN

最后来张效果看看。

可以同时执行hbase shell

以下是一些hbase shell命令,比如,创建一个表、插入一些数据查看,等等。

 create 'T5' ,'B','0'put 'T5',1,'0:ID','2'put 'T5',1,'0:NAME','杨振国'listscan "T5"

hbase 进阶之旅一(windows下源码的安装与调试)相关推荐

  1. 手把手教你在windows下源码编译Open3D

    文章目录 前言 1.编译环境 2.编译步骤 3.编译中的bug 3.1 下载超时问题,ispc.pybind11.open3d_sphinx_theme等 3.2 boringssl 3.3 Dire ...

  2. centos lnmp源码安装mysql_CentOS 6.6 下源码编译安装MySQL 5.7.5

    说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具 # yum -y install gcc-c++ ncurses-devel cmake make perl \ ...

  3. ubuntu安装python_ubuntu18.04下源码编译安装最新版本Python3

    原文链接:ubuntu18.04下源码编译安装最新版本Python3 截止到2019年4月9日,Python3最新的版本是3.7.3. 在ubuntu18.04中已经安装的Python3版本是3.6. ...

  4. Python 3.10版本及其依赖项 Linux下源码编译 安装到指定路径/目录

    Python 3.10版本及其依赖项 Linux下源码编译 安装到指定路径/目录 安装需求 准备工作 Python及其依赖项 libffi glibc GDBM mpdecimal bz2 xz re ...

  5. python版本升级后编译_ubuntu18.04下源码编译安装最新版本Python3

    截止到2019年4月9日,Python3最新的版本是3.7.3. 在ubuntu18.04中已经安装的Python3版本是3.6.7,下面我们就演示一下如何在ubuntu18.04下源码编译安装Pyt ...

  6. CentOS7下源码编译安装MySQL5.6.4

    CentOS7下源码编译安装MySQL5.6.4 写这篇博客的主要原因是:请看上一篇博客:CentOS7下更改MySQL5.6.4默认的数据存储位置.对,当初通过rpm安装的mysql5.6.4,一切 ...

  7. 在 Linux 和 Windows 下源码安装 Perl

    Perl 是一种功能丰富的计算机程序语言,运行在超过 100 种计算机平台上,适用广泛,从大型机到便携设备,从快速原型创建到大规模可扩展开发.在生物信息分析领域,Perl 主要是做数据预处理.文本处理 ...

  8. Linux 下源码编译安装 vim 8.1

    前言 目前 linux 的各个发行版基本上都是带了一个 vi 编辑器的,而本文要说的 vim 编辑器对 vi 做了一些优化升级,更好用.当我们需要远程操作一台 linux 服务器的时候,只能使用命令行 ...

  9. Linux下源码编译安装新版libxcb

    前言 上一篇文章提到,linux 下编译Qt源码如果要用到Quick的话,那么运行时会依赖qxcb库,而编译生成qxcb库就需要先安装libxcb,并且最低要求 版本大于1.9.1 Requires ...

最新文章

  1. CHUCK手把手带你搞定OPENSTACK
  2. 【建站系列教程】1、前言
  3. 5月书讯:流畅的Python,终于等到你!
  4. (二):集成日志框架:springboot使用logback日志框架
  5. MongoDB(7.mongodb中创建索引)
  6. C Primer Plus note1
  7. Angular jasmine单元测试框架里spyOn的创建原理
  8. 用python可以画的可爱的图形_利用Python绘制诱人的桑基图
  9. 开源一个ReactNative日历控件
  10. 详解CSS中:nth-child的用法
  11. 网页端Excel开发与设计
  12. 第八篇,滤波:二阶低通滤波、卡尔曼滤波
  13. ddPCR--数字微滴PCR
  14. 禅与摩托车维修艺术语录摘抄(1)
  15. oppo禁用android系统通知栏,OPPO全机型手机去除状态栏ROOT警告-安卓刷机教程
  16. 【Java】抽象类继承的综合案例
  17. 2018中山大学计算机分数线,中山大学2018年各专业录取分数线,你还差多少分?...
  18. JAVA程序填空题用公式求e_Java 使用对象 编程练习题
  19. 各种屏幕录像软件使用教程及效果对比
  20. 列车调度(贪心):单机调度问题贪心算法

热门文章

  1. 玻璃手机不仅是产品 更是一种信念
  2. python中的概率例题_编程语言经典小例题—Python版【持续更新】
  3. 在html5中居中如何定义,html上下居中代码怎么写
  4. 双显示器如何设置上下显示和鼠标上下进入第二屏幕方向
  5. ACE 开 发 环 境 构 建 笔 记
  6. 风云崛起之使用simulink画微分方程图像
  7. Swagger 是什么?
  8. 图像处理中的mask(掩膜)
  9. 物联网平台搭建的全过程介绍(十)阿里云服务器ESC上安装MySQL数据库
  10. (亚马逊第一步)撸一个亚马逊服务器从注册到登录所需几步