HBase数据库的安装和Shell命令操作

HBase数据库的安装与配置

1. 安装
  • 下载HBase压缩包(注意:HBase对Hadoop的版本具有依赖性,需根据自己的hadoop版本下载合适版本的hbase)HBase下载地址

    本人的Hadoop版本是3.2.1,配置的是HBase2.2.2

  • 将压缩包解压到/usr/local

    sudo tar -xzvf ~/下载/hbase-2.2.2-bin.tar.gz -C /usr/local
    
  • 将hbase-2.2.2 (注意改为你的版本号) 重命名为hbase

    cd /usr/local
    sudo mv ./hbase-2.2.2 ./hbase
    
  • 给hadoop用户赋权限(你的当前用户)

    sudo chown -R hadoop ./hbase
    
2. 配置
单机模式
  • 配置 /usr/local/hbase/conf/hbase-env.sh

    vim /usr/local/hbase/conf/hbase-env.sh
    

    添加 Java 路径:

    将 HBASE_MANAGES_ZK 的值改为true:

  • 配置 /usr/local/hbase/conf/hbase-site.xml

    vim /usr/local/hbase/conf/hbase-site.xml
    

    将 configuration 里的内容替换为:

    <configuration>
            <property>
                    <name>hbase.rootdir</name>
                    <value>file:///usr/local/hbase/hbase-tmp</value>
            </property>
    </configuration>
    
  • 查看 hbase 的版本

    ./hbase version
    
  • 启动 hbase

    cd /usr/local/hbase/bin
    ./start-hbase.sh
    

    输入 jps 出现 HMaster和Jps,则表明配置成功

  • 关闭 hbase

    ./stop-hbase.sh
    
伪分布模式
  • 配置/usr/local/hbase/conf/hbase-env.sh

    gedit /usr/local/hbase/conf/hbase-env.sh
    

    在配置单机模式的基础上,新添加一次修改,去掉 HBASE_CLASSPATH 前的 # 号

  • 配置 /usr/local/hbase/conf/hbase-site.xml

    将 configuration 里的内容替换为:

    <configuration>
            <property>
                    <name>hbase.rootdir</name>
                    <value>hdfs://localhost:9000/hbase</value>
            </property>
            <property>
                    <name>hbase.cluster.distributed</name>
                    <value>true</value>
            </property>
            <property>
            <name>hbase.unsafe.stream.capability.enforce</name>
            <value>false</value>
        </property>
    </configuration>
    

hbase伪分布模式的启动顺序应遵循:启动Hadoop—>启动HBase—>关闭HBase—>关闭Hadoop

  • 启动Hadoop

    cd /usr/local/hadoop
    ./sbin/start-dfs.sh		# 启动hadoop
    jps		# 查看是否成功启动
    
    HBase数据库的安装和Shell命令操作_第1张图片
  • 启动hbase

    cd /usr/local/hbase/bin
    ./start-hbase.sh		# 启动hbase
    jps		# 查看是否成功启动
    
    HBase数据库的安装和Shell命令操作_第2张图片

    输入 jps 命令后,新增了HMasterHRegionServerHQuorumPeer,则说明配置成功了

  • 关闭hbase

    cd /usr/local/hbase/bin
    ./stop-hbase.sh
    
  • 关闭Hadoop

    cd /usr/local/hadoop
    ./sbin/stop-dfs.sh
    

HBase Shell命令操作

首先应该启动hbase,注意伪分布模式的启动顺序

  • 进入shell界面

    cd /usr/local/hbase/bin
    ./hbase shell
    
    HBase数据库的安装和Shell命令操作_第3张图片
  • 用shell命令创建数据表,如创建学生表 Student(S_ID, S_Name, S_Sex, S_Age)

    create 'Student','S_ID','S_Name','S_Sex','S_Age'
    

    如出现 Master is initializing 错误:

    HBase数据库的安装和Shell命令操作_第4张图片

    解决办法:关闭 hbase,先启动 HRegionServer,然后启动 Hmaster,再启动 hbase

    cd /usr/local/hbase/bin
    ./stop-hbase.sh							# 关闭 hbase
    ./hbase-daemon.sh start regionserver	# 启动 HRegionServer服务
    ./hbase-daemon.sh start master			# 启动 HMaster服务
    ./start-hbase.sh						# 启动 hbase
    

    也许本方法对你的问题不适用,网上还有许多类似问题的解决方法,奥力给!!!

  • 可用 describe 命令查看表的基本信息,如学生表 Student:

    describe 'Stuednt'
    
  • 添加数据,用 put 命令

    help "put"		# 查看put的添加格式
    
    HBase数据库的安装和Shell命令操作_第5张图片

‘t1’ 表示需添加数据的表,‘r1’ 表示添加的行,‘c1’ 表示添加的列,‘value’ 表示值

添加格式如图:

HBase数据库的安装和Shell命令操作_第6张图片
  • put命令也可用于更新操作,如:

    put 'Student','3','S_ID','007'
    put 'Student','3','S_ID','008'
    

最终学生表第三行得到 ‘S_ID’ 数据应为 ‘008’

  • 查看所有数据用 scan 命令,如查询Student表的所有数据

    scan 'Student'
    
  • 查询任意一条数据用 get 命令,如查询学生表的第3行数据

    get 'Student','3'
    
  • 删除表需分两步,如删除学生表

    disable 'Student'	# 是该表不可用
    drop 'Student'		# 删除该表
    
  • 删除一个数据用 delete 命令,如删除学生表第3行的学生姓名(为啥听见了磨刀声,居然是 ‘宝儿姐’,罪过、罪过)

    delete 'Student','3','S_Name'
    

这样就删除了 ‘宝儿姐’ 这个数据,小的再也不敢了

  • 删除一行数据用 deleteall 命令 ,如删除第三行数据

    deleteall 'Student','3'
    
  • 查询当前有多少数据表

    list
    
  • 退出shell界面

    exit
    

    最后就是关闭hbase—>关闭Hadoop

你可能感兴趣的:(Hadoop)