Hbase刪除名稱空間指令碼
Hbase沒辦法直接刪除namespace,需要先把名稱空間下的表都刪了才能刪除,網上沒找到現成的指令碼,所以自己寫了個,如果有問題,歡迎指出來。
執行時需要傳入namespace的名稱。
#!/bin/bash
#讀取名稱空間下的所有表名
list_tables(){
/opt/newland/core/hbase/bin/hbase shell << EOF
list_namespace_tables "$1"
EOF
}
#刪除該名稱空間下的表
drop_tables(){
/opt/newland/core/hbase/bin/hbase shell << EOF
disable "$1:$2"
drop "$1:$2"
EOF
}
#刪除名稱空間
drop_namespace(){
/opt/newland/core/hbase/bin/hbase shell << EOF
drop_namespace "$1"
EOF
}
#獲取所有表名
table_info=$(list_tables $1)
#過濾後只剩表明
tables_name=$(echo $table_info | awk -F " TABLE " '{print $2}' | awk -F " row" '{print $1}'|awk -F " " 'OFS=" "{$NF="";print}')
#迴圈執行刪除該名稱空間下的表
for s in ${tables_name[@]}
do
echo "傳入引數:$1"
echo "表名:$s"
drop_tables $1 $s
done
#刪除名稱空間
drop_namespace $1
相關文章
- 如何刪除名稱相同的儲存過程儲存過程
- 監控硬碟空間指令碼硬碟指令碼
- 名稱空間
- JAXB名稱空間及名稱空間字首處理
- 監控oracle表空間指令碼Oracle指令碼
- 移動表空間的指令碼指令碼
- oracle空間使用監控指令碼Oracle指令碼
- 刪除名為"-a"的檔案 (轉)
- PHP 名稱空間PHP
- PHP名稱空間PHP
- vuex名稱空間Vue
- jQuery 名稱空間jQuery
- JavaScript 名稱空間JavaScript
- jquery bind()名稱空間程式碼例項jQuery
- Linux管理指令碼之清理空間Linux指令碼
- python名稱空間Python
- C++名稱空間C++
- 更改模型名稱空間模型
- 全域性名稱空間
- C++ 名稱空間C++
- Python 名稱空間Python
- 11. 名稱空間
- ts---名稱空間
- webservice修改名稱空間Web
- 根據源庫表空間實際使用建立表空間指令碼指令碼
- 使用p名稱空間和c名稱空間的XML快捷方式XML
- 指令碼建立表空間、使用者、表指令碼
- 檢視空間使用情況的指令碼指令碼
- 計算表空間使用率指令碼指令碼
- 檢查表空間、資料檔案、OS空間使用情況的指令碼指令碼
- javascript名稱空間使用簡單程式碼例項JavaScript
- PHP 核心特性 - 名稱空間PHP
- Spring名稱空間解析Spring
- 使用名稱空間:基礎
- ros節點名稱空間ROS
- JavaScript 中的名稱空間JavaScript
- PHP名稱空間概念解析PHP
- JAXB玩轉名稱空間