我正在尝试使用下面的命令在Hbase命名空间中创建表,但是获得权限问题。
hbase(main):010:0> create 'hbasetest:my_table', 'fam'
ERROR: org.apache.hadoop.hbase.security.AccessDeniedException: Insufficient permissions for user 'qjdht' (global, action=CREATE)
我向用户'qjdht'提供了权利。
hbase(main):003:0> grant '@hbasetest', 'RWXCA', '@hbasetest'
0 row(s) in 0.8160 seconds
用户qjdht是hbasetest组的成员,但我仍然遇到相同的权限问题。
答案 0 :(得分:0)
在shell中,您可以发出命令 user_permission' tablename' 。但由于您无法在第一时间创建它,因此无法使用它。
尝试创建' my_table',' fam' 。无论如何我都会使用用户名。一旦授予权限并创建表,Hbase就应该处理权限并允许您执行操作
如果仍然出现问题,超级用户应该授予权限。因此,当您授予许可时,它可能不会接受它。您可以要求您的管理员授予访问权限
希望其中一个步骤能够奏效。请发布结果
答案 1 :(得分:0)
你的hbase版本是什么?您可能对以下链接感兴趣
https://issues.apache.org/jira/plugins/servlet/mobile#issue/HBASE-12098
这是一个已知问题,可在0.98.7+版本中使用。
希望这些信息对您有所帮助。