前言:apache phoenix开启namespace功能跟简单,但是开启了怎么关闭呢?官网:设置phoenix.schema.isNamespaceMappingEnabled参数生效后,不能回滚,但是我必须得改回去呀,改不回去影响业务呀,于是有了下边的方法
先来张官网的图:
坑吧,一旦参数生效,不能回滚
怎么回滚,就是关掉这个namespace功能:
1、把之前在hbase端和phoenix端设置的参数phoenix.schema.isNamespaceMappingEnabled=true删掉,这个很简单,既然回滚,参数肯定要改回去
这是启动phoenix client,会报如下错误:
Error: ERROR 726 (43M10): Inconsistent namespace mapping properties.. Cannot initiate connection as SYSTEM:CATALOG is found but client does not have phoenix.schema.isNamespaceMappingEnabled enabled (state=43M10,code=726)
2、重启hbase
3、修改hbase中表SYSTEM:CATALOG名为SYSTEM.CATALOG
disable 'SYSTEM:CATALOG'
snapshot 'SYSTEM:CATALOG', 'cata_tableSnapshot'
clone_snapshot 'cata_tableSnapshot', 'SYSTEM.CATALOG'
drop 'SYSTEM:CATALOG'
4、一定要在第三步最后删掉SYSTEM:CATALOG,并且保证你已经clone了一张SYSTEM.CATALOG
最后,重启phoenix client,测试成功