避免MySQL数据库所有表生成hive表结构,
创建MySQL有一张table表table_name列储存我们想要生成hive表结构的表名
#!/bin/bash
DB_HOST='192.168.0.000'
DB_PORT='3306'
DB_NAME='default'
TB_NAME='table'
TB_ZD='table_name'
USERNAME='root'
PASSWORD='123456'
PARAMS='?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai'
#查看数据库要导入的表字段(字段为表名)
ABC=$(mysql -h${DB_HOST} -P${DB_PORT} -u${USERNAME} -p${PASSWORD} information_schema -e "
use ${DB_NAME};
select ${TB_ZD} from ${TB_NAME};
")
EMP=${ABC:10}
echo $EMP
#TBL_NAME=$EMP
HIVE_DB='default'
HIVE_TIR='ods_'
#构建hive建表语句,循环依次执行表名
for TBL_NAME in $EMP
do
qq="$(mysql -h${DB_HOST} -P${DB_PORT} -u${USERNAME} -p${PASSWORD} inform