一、系统命令

启动hbase Shell
  ./bin/hbase shell
获取帮助
  help
查询服务器状态
  status
查询hbase版本
  version
查询表
  list
获取表描述
  describe 'member'
扫描记录
  scan ‘table’
禁用表
  disable ‘table’
使能表
  enable ‘table’
删除表
  disable ‘table’
  drop ‘table’
退出hbase shell
  quit

二、控制命令权限grant命令用于给指定用户授予特定的权限

  grant <user>, <permissions> [, <@namespace> [, <table> [, <column family> [, <column qualifier>]]]]

    # 给用户userName授予RWXC权限
    grant 'userName', 'RWXC'
   # 给用户test授予表tbl1的读权限
    grant 'userName','R','tableName'
   # 给用户组testgrp授予表tbl1的读权限
    grant '@userFroup','R','tableName'
   # 给用户test授予namespace ns_1的CREATE权限
    grant 'userName 'C','@ns_1'

2、revoke命令用于回收指定用户的权限
  revoke <user> [, <@namespace> [, <table> [, <column family> [, <column qualifier>]]]]
 

   # 回收用户userName授予RWXC权限
    revoke 'userName'
   # 回收用户userName授予表tbl1的读权限
    revoke 'userName','R','tableName'
   # 回收用户组testgrp授予表tbl1的读权限
    revoke '@userFroup','R','tableName'
   # 回收用户userName授予namespace ns_1的CREATE权限
    revoke 'userName 'C','@ns_1'

3、user_permission用于查询权限
  user_permission <table> 查看指定表的权限
  user_permission 'table01' 4、<permissions>包括以下5种权限
  R - 可以读取给定范围的数据。
  W - 可以在给定范围内写入数据。
  X - 可以在给定范围内有执行权限。
  C - 可以在给定范围内创建表或删除表(甚至是那些他们没有创建的表)。
  A - 可以执行集群操作,例如平衡集群或在给定范围内分配Region。

三、DML操作一

1、创建用户信息表user_info
  create 'user_info',{NAME => 'i'} 2、以增加编号12005000201的用户信息为例,其他用户信息参照如下命令依次添加
  put 'user_info','12005000201','i:name','A'
  put 'user_info','12005000201','i:gender','Male'
  put 'user_info','12005000201','i:age','19'
  put 'user_info','12005000201','i:address','Shenzhen, Guangdong' 3、在用户信息表user_info中新增用户的学历、职称信息
  put 'user_info','12005000201','i:degree','master'
  put 'user_info','12005000201','i:pose','manager' 4、根据用户编号查询用户姓名和地址
  scan 'user_info',{STARTROW=>'12005000201',STOPROW=>'12005000201',COLUMNS=>['i:name','i:address']} 5、根据用户姓名进行查询
  scan 'user_info',{FILTER=>"SingleColumnValueFilter('i','name',=,'binary:A')"} 6、删除用户信息表中该用户的数据
  delete 'user_info','12005000201','i' 7、删除用户信息表
  disable 'user_info';drop 'user_info'

四、DML操作二

1、创建一个普通表
创建表 表名 列族1 列族2 列族3
create 'member','member_id','address','info'

    

2、插入数据
put 'member','xiaoming','info:age','24'
put 'member','xiaoming','info:birthday','1987-06-17'
put 'member','xiaoming','info:company','alibaba'
put 'member','xiaoming','address:contry','china'
put 'member','xiaoming','address:province','zhejiang'
put 'member','xiaoming','address:city','hangzhou' put 'member','xiaofeng','info:birthday','1987-4-17'
put 'member','xiaofeng','info:favorite','movie' 
put 'member','xiaofeng','info:company','alibaba'
put 'member','xiaofeng','address:contry','china'
put 'member','xiaofeng','address:province','guangdong'
put 'member','xiaofeng','address:city','jieyang'
put 'member','xiaofeng','address:town','xianqiao'
3、获取一条数据
获取一个id的所有数据
get 'member','xiaofeng'

      

    获取一个id,一个列族的所有数据
get 'member', 'xiaoming','info'

      

    获取一个id,一个列族中一个列的所有数据
get 'member','xiaoming','info:age'

      

    得到所有行info:birthday列中的数据
scan 'member' , {COLUMNS => 'info:birthday'}
4、更新一条数据
将xiaoming的年龄改成99
put 'member','xiaoming','info:age' ,'99'

      

        get 'member','xiaoming','info:age' 
      
5、通过timestamp来获取两个版本的数据
get 'member','xiaoming',{COLUMN=>'info:age',TIMESTAMP=>1321586238965}
      
    get 'member','xiaoming',{COLUMN=>'info:age',TIMESTAMP=>1321586571843}
      
6、删除id为xiaoming的值的‘info:age’字段
delete 'member','xiaoming','info:age'
7、删除整行
deleteall 'member','xiaofeng'
8、查询表中有多少行
count 'member'
9、给xiaofeng这个id增加'info:age'字段
incr 'member','xiaofeng','info:age'                    
get 'member','xiaofeng','info:age' 
10、将整张表清空
truncate 'member'

四、DDL操作

1、创建一个普通表(包含3个列族)
create 'member','member_id','address','info' 创建一个带版本的表
create 't1',{NAME='cf',VERSIONS=5}
2、获取表的描述
list
describe 'member'
3、删除一个列族
我们之前建了3个列族,但是发现member_id这个列族是多余的,因为他就是主键,所以我们要将其删除。(关键字大小写敏感)
disable 'member'
alter'member',NAME=>'member_id',METHOD=>'delete'
describe 'member'
该列族已经删除,我们继续将表enable
enable 'member' 
4、删除一个表
disable 'temp_table'
drop 'temp_table'
5、查询表是否存在
exists 'member'
6.判断表是否enable
is_enabled 'member'
7.判断表是否disable
is_disabled 'member'

Hbase之shell基本操作的更多相关文章

  1. hbase shell 基本操作

    hbase shell  基本操作 启动HBASE [hadoop@master ~]$hbase shell      2019-01-24 13:53:59,990 WARN  [main] ut ...

  2. Hbase shell基本操作

    1.启动cd <hbase_home>/bin$ ./start-hbase.sh 2.启动hbase shell # find hadoop-hbase dfs fileshadoop ...

  3. HBase基本shell命令

    HBase基本shell命令 以下shell命令都是经过测试,正常展示,若有不足,还望指点! 1.创建表 create ‘表名称’,‘列族名称1’,‘列族名称1’create 'test_M_01', ...

  4. hbase运行shell时ERROR:org.apache.hadoop.hbase.PleaseHoldException: Master is initializing 的解决办法

    这个问题困扰了我一天多的时间,百度搜索的前几条的答案也是很扯淡的,说什么把/etc/hosts文件下的127.0.1.1改成127.0.0.1就行了,我也只能呵呵了.今天早上起得很晚,中午迪哥请我们去 ...

  5. HBase的shell命令行界面按退格键(Backspace)无法删除问题

    在HBase的shell命令行界面输入错误项按"退格键"删除,却怎么也删除不了: 解决办法: 第一步,修改SecureCRT的设置参数: 第二步,按"Ctrl+退格键(B ...

  6. HBase的Shell命令

    1.HBase提供了一个shell的终端给用户交互 2.HBase Shell的DDL操作 (1)先进入HBase的 Shell命令行,即HBASE_HOME/bin/hbase shell …… & ...

  7. linux下MongoDB客户端shell基本操作

    MongoDB 是一款NoSql数据库,没有固定的模式,即同一个集合中的不同文档结构可以不同,如:第一条记录{name:”xiaoming”},第二条记录:{name:”xiaoli”,age:15} ...

  8. HBase的Shell命令和JavaAPI

    HBase的shell操作和JavaAPI的使用: Shell 表操作 创建表 create 'student','info' #表名 列族 插入表 put 'student','1001','inf ...

  9. shell 基本操作小结

    1.echo和if else fi命令 #!/bin/bash echo hello;echo there filename=demo.sh if [ -e "$filename" ...

随机推荐

  1. mysql开发实战8问

    mysql读写性能是多少,有哪些性能相关的配置参数? Mysql负载高时,如何找到是由哪些SQL引起的? 如何针对具体的SQL做优化? SQL层面已难以优化,请求量继续增大时的应对策略? Mysql如 ...

  2. 奇技淫巧玄妙无穷| M1 mac os(苹果/AppleSilicon)系统的基本操作和设置

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_191 最近有个朋友跟我说,说他新入职了一家公司,公司还不错,给他配了一台Mac,但是呢他以前一直在Windows环境下开发,对Ma ...

  3. 5.25 NOI 模拟

    \(T1\)旅行计划 不\(sb\)的题 比较显然转化成求一个点到所有点的最短路和 考虑我们非树边很少,那么可以把非树边连接的点看做是关键点,那么我们可以预处理每个关键点之间的最短路 我们每次询问,对 ...

  4. mui switch(开关)里面token不能及时更新

    做登录的时候再本地用locaStorage存了一个token值,但是登录之后进入页面里面发现一个switch开关里面的token值会跟着开关的切换在上一个token和当前的这个token值之间切换,我 ...

  5. Luogu1064 金明的预算方案 (有依赖的背包)

    枚举多个状态 #include <iostream> #include <cstdio> #include <cstring> #include <algor ...

  6. java-前端之js

    js: js的三种形式: <!-- 事件:就是用户的操作或者动作,就是js被调用的时机:如:单机事件,双击事件 --> <!-- 1.事件定义式:在定义事件时直接写js --> ...

  7. Dart 异步编程(二):async/await

    对每一个异步任务返回的 Future 对象都使用链式操作-- then ,超过三个以上时,导致"倒三角"现象,降低代码的可阅读性. getHobbies() { post('htt ...

  8. centos 安装ftp服务BUG

    安装完成之后匿名可登录,但是先创建的用户名和密码无法登录,最后排查原因是/etc/pam.d/vsftpd 文件注释掉第四行 auth required pam_shells.so

  9. P5384[Cnoi2019]雪松果树 (长链剖分)

    题面 一棵以 1 1 1 为根的 N N N 个节点的有根树, Q Q Q 次询问,每次问一个点 u u u 的 k k k 级兄弟有多少个(第 k k k 代祖先的第 k k k 代孩子),如果没有 ...

  10. PHP代码审计学习-php安全基础

    PHP代码审计-php安全基础 php.ini选项 register_globals php>=4.2.0,php.ini 的 register_globals 选项的默认值预设为 Off,当 ...