1、把需要导出的hive库都准备好,然后修改下面的命令,导出某个库里的所有表名到文件中
hive -e "use jkdb;show tables;" > /opt/tables.txt
2、修改下面的脚本,下面的脚本是把某库中的所有表结构导出到文件中,把脚本内容写到一个文件exporttab.sh中
#!/bin/bash
cat tables.txt |while read eachline
do
hive -e "use jkdb;show create table $eachline" >>trajx_tablesDDL.txt
echo ";" >> trajx_tablesDDL.txt
done
3、把导出的 trajx_tablesDDL.txt文件scp 到新集群的服务器上
修改文件内容,库名,路径等
create database jkdb;
use jkdb;
执行导入:hive -f trajx_tablesDDL.txt
4、复制数据到新集群
在新集群的主节点上执行如下命令
hadoop distcp hdfs://work-001:8020/user/hive/warehouse/jkdb.db hdfs://hdfscluster/user/hive/warehouse/jkdb.db
5、验证数据是否可查
select * from xxx limit 10;