赞
踩
alter database <my_db> set DBPROPERTIES('hive.warehouse.dir'='<new_hdfs_loc>');
alter database <my_db> set DBPROPERTIES('location'='<new_hdfs_loc>');
alter database <my_db> set location '<new_hdfs_loc>';
前两个alter语句只更改了DB属性,查看数据库详细信息时还是指定的原来路径,只是增加了俩个属性,但数据库还是只想原来位置,数据也是保存在原来的位置,第三个,显示更改了,数据也放在了新路径上,但是有时候会报语法错误,慎重操作。
经过一些反复试验,我了解到Hive在数据库上运行ALTER时不支持以下两个条件。
不允许更改目录位置或数据库名称。 不允许删除或取消设置之前定义的db属性
如果必须要改,又不能删除,可以考虑处理hive元数据,但是有风险,谨慎操作。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。