TDH-hbase shell 常用命令

时间:2023-03-09 15:03:42
TDH-hbase shell 常用命令

一、HBASE shell 命令操作;
1.建表: create ‘tableName’,'f1','f2'; 注:列簇,裂限定符都要尽量短;

2.插入数据: put 'tableName','RowKey','f1:c1','value1'

3.查询数据:整表:scan 'tableName';

单条: /* 读取列族数据 */
get ‘table_name’, ‘row_key’, ‘cf’
/* 读取列数据 */
get ‘table_name’, ‘row_key’, ‘cf:cq’

4.更新数据:put 'tableName', 'RowKey', 'f1:c1', 'update value';

5.删除数据:单元格:delete 'tableName', 'RowKey', 'f1:c1';
整行: deleteall 'tableName', 'RowKey';

二、HBASE SQL操作:

1.建表:bank_info

CREATE TABLE bank_info(
acc_num STRING,
name STRING,
password STRING,
email STRING,
cellphone STRING,
balance DOUBLE
)STORED AS HYPERDRIVE;

2.插入一条数据;

insert into table bank_info values("0001", "Zhang San", "5678", "zs@mail.com", "12345678912", "10000.0");

3.查询数据:select * from bank_info;

4.删除表:drop table bank_info;

三、HBase安全
1.scan指令查看一张实际的hbase:acl中的内容(注意,只有有全局权限的用户才看以看到hbase:acl中的内容)
指令:scan 'hbase:acl'

2.授予alice用户RW权限:
指令:grant 'alice','RW'

3.授予用户组写权限:
grant '@groupx','W'

4.授予用户对命名空间的权限:
grant 'alice','R','@ns1'

5.授予用户组groupx对命名空间ns1的C权限
grant '@groupx','C','@ns1'

6.授予用户alice对表bi的R权限
grant 'alice','R','bi'

7. 授予用户alice对命名空间ns1中的表tb1的WC权限
grant 'alice','WC','ns1:tb1'

8. 授予用户组groupx对表bi的R权限
grant '@groupx','R','bi'

9. 授予用户alice对表t4中列族f1的R权限
grant 'alice', 'R', 't4', 'f1'

10. 授予用户alice对表t4中f2:q1列的R权限
grant 'alice', 'R', 't4', 'f2', 'q1'

11.查看权限;user_permission 't4'

12. 收回用户alice对表t4的所有权限
revoke 'alice','t4'

四.kadmin进入hbase的命令:
1.kinit test@TDH
2.klist -kt /etc/hyperbase1/hbase.keytab
3.kinit -kt /etc/hyperbase1/hbase.keytab hbase/gz232-110@TDH
4.hbase shell;