表结构导出

## @Title  Hive库表元数据导出脚本
## @Author changxy #!/bin/bash ##############注意修改Hive连接信息###############
hive=jdbc:hive2://127.0.0.1:10000
################################################# # 获取当前时间
date=$(date +%H%M)
# 导出脚本保存目录
dir=/home # 执行查询数据库命令
exec=$(beeline -u $hive -n hive -e "show databases;")
# 按照换行分隔为数组
databases=(${exec//\\n/})
# 遍历数据库
for db in "${databases[@]}"
do
if [[ $db != +* && $db != _* && $db != \| && $db != database_name ]]
then
# 写入创建数据库语句导出脚本文件
echo "CREATE DATABASE IF NOT EXISTS $db;" >> $dir/hive_export_$date.sql # 执行show tables语句查询数据表
exec=$(beeline -u $hive -n hive -e "use $db; show tables;")
# 替换|字符
exec=${exec//|/}
# 根据换行转为数组
tables=(${exec//\\n/}) # 遍历数据表
for tab in "${tables[@]}"
do if [[ $tab != +* && $tab != tab_name ]]
then
echo "数据表: "$tab
# 获取创建表DDL
exec_create_table_ddl=$(beeline -u $hive -n hive -e "use $db; show create table $tab;")
# 根据|分隔为数组对象
lines=(${exec_create_table_ddl//\|/})
# 定义create table dll语句
ddl=''
# 遍历create table ddl
for line in "${lines[@]}"
do
# 遇到ROW FORMAT SERDE跳出当前循环
if [[ $line == ROW ]]; then
break
elif [[ $line != +* && $line != createtab_stmt ]]; then
# 拼接create table脚本
ddl="$ddl $line"
fi
done;
# create table脚本最后面加上分号
ddl="$ddl ;"
# 写入导出文件
echo $ddl >> $dir/hive_export_$date.sql
fi done; fi
done

表结构导入

hive -f hive_export_1525.sql

Hive数据库数据表元数据导出脚本的更多相关文章

  1. 数据库数据用Excel导出的3种方法

    将数据库数据用Excel导出主要有3种方法:用Excel.Application接口.用OleDB.用HTML的Tabel标签 方法1——Excel.Application接口: 首先,需要要Exce ...

  2. PHP创建数据库数据表

    PHP创建数据库数据表 <?php $con = mysql_connect('localhost', 'root', 'root'); /************************在数据 ...

  3. SQL语句(一)SQL和数据库数据表的创建

    SQL的组成 (1) 数据定义语言DDL(Data Definition Language) 用于数据库和数据表的创建.修改和删除等操作 CREATE (create) 创建数据库.数据表 ALTER ...

  4. 第二百七十七节,MySQL数据库-数据表、以及列的增删改查

    MySQL数据库-数据表.以及列的增删改查 1.创建一个表 CREATE(创建) TABLE(表) ENGINE(引擎) ENGINE=INNODB(引擎)还有很多类引擎,这里只是简单的提一下INNO ...

  5. SQL Sever实验一 创建和删除数据库数据表

    一. 实验目的 1. 熟悉SQL    Server    2008    中SQL    Server    Management    Studio的环境 2. 了解SQL    Server   ...

  6. opencart 3.0 版本数据库数据表字典(详细篇)

    1.下文是opencart3.0版本数据库数据表字典,表字段与功能的介绍都比较详细.             数据表 address :地址表,会员在结账时储存的账单地址或者配送地址(这个与区域配送方 ...

  7. mysql 数据表备份导出,恢复导入操作实践

    因为经常跑脚本的关系, 每次跑完数据之后,相关的测试服数据库表的数据都被跑乱了,重新跑脚本恢复回来速度也不快,所以尝试在跑脚本之前直接备份该表,然后跑完数据之后恢复的方式,应该会方便一点.所以实践一波 ...

  8. python操作数据库-数据表

    数据表: 数据类型: 帮助的三种形式: 在cmd中输入: help 要帮助的主题词,或 ? 要帮助的主题词 或  \h 要帮助的主题词 . 数据表的创建: CREATE database IF NOT ...

  9. Django数据库数据表操作

    建立表单 django通过设置类来快速建表,打开models.py 例: from __future__ import unicode_literals from django.db import m ...

  10. pg数据库数据表异常挂起

    pg数据库即是PostgreSQL数据库. 前几天在一个Java项目中,出现运行Java程序后,pg数据库的数据表异常挂起.而且是在某台电脑上出现的,重装数据库也没用,其它电脑未能复现,是个很奇怪的现 ...

随机推荐

  1. Linux 身份验证被拒绝,登录失败解决

    解决方案: vim /etc/ssh/sshd_config 修改参数 基本参数: PermitRootLogin yes #允许root认证登录 PasswordAuthentication yes ...

  2. GAN!生成对抗网络GAN全维度介绍与实战

    本文为生成对抗网络GAN的研究者和实践者提供全面.深入和实用的指导.通过本文的理论解释和实际操作指南,读者能够掌握GAN的核心概念,理解其工作原理,学会设计和训练自己的GAN模型,并能够对结果进行有效 ...

  3. 深度学习(十二)——神经网络:搭建小实战和Sequential的使用

    一.torch.nn.Sequential代码栗子 官方文档:Sequential - PyTorch 2.0 documentation # Using Sequential to create a ...

  4. WLAN-AC+AP,动态负载均衡用户量,避免某一个AP负载过重

    组网图形 动态负载均衡简介 负载均衡功能主要功能就是平衡WLAN网络中AP的负载,充分地保证每个STA的带宽.当有一个新的STA加入网络时,动态负载均衡动态将AC将所有上报该STA的AP动态组成一个组 ...

  5. OpenStack-T版+Ceph

    OpenStack OpenStack 中有哪些组件 keystone:授权 [授权后各个组件才可以进行相应的功能] Keystone 认证所有 OpenStack 服务并对其进行授权.同时,它也是所 ...

  6. 重磅| Falcon 180B 正式在 Hugging Face Hub 上发布!

    引言 我们很高兴地宣布由 Technology Innovation Institute (TII) 训练的开源大模型 Falcon 180B 登陆 Hugging Face! Falcon 180B ...

  7. Burp Suite抓包工具配置代理手机抓取数据包

    工作中很多手机上的问题因为环境差异导致无法在pc设备上完整的模拟真实物理手机,因此需要方法能抓取到手机设备上所有数据包发送详情.发现了这个好用的数据包抓取工具Burp Suite. 一.配置流程: 1 ...

  8. Android 编译介绍

    一.需求 Android的源码非常的庞大,编译Android系统往往会占用我们很长的时间,我们需要了解下Android的编译规则,以期能提高我们的开发效率,达到程序员按时下班的伟大理想. 二.环境 平 ...

  9. Microsoft Build 2021第二天

    C++20 Ranges are complete in Visual Studio 2019 version 16.10 https://devblogs.microsoft.com/cppblog ...

  10. 新零售SaaS架构:面向中小连锁的SaaS系统整体规划

    零售企业的发展路径 零售企业的发展路径一般可分为以下几个阶段: 单店经营阶段:企业在一个地区或城市开设单个门店.这时,企业需要把精力放在了解当地市场和顾客需求上,这是积累经验和品牌知名度的重要环节.为 ...