#!/bin/bash mysql_db=quotes mysql_host=slave1 mysql_user=root mysql_pwd=Bigdata_123 export_data() { /softwares/sqoop-1.4.7/bin/sqoop export \ --connect jdbc:mysql://$mysql_host:3306/$mysql_db \ --username $mysql_user \ --password $mysql_pwd \ --table $1 \ --num-mappers 1 \ --export-dir /user/hive/warehouse/quotes/ads/$1 \ --input-fields-terminated-by "\t" \ --update-mode allowinsert } case $1 in "ads_hot_tag") export_data "ads_hot_tag" ;; "all") export_data "ads_hot_tag" ;; esac
时间: 2024-03-28 10:37:47 浏览: 176
MYSQL.zip_C MYSQL_c++ mysql_linux mysql_linux c mysql_linux mys
这是一个 Bash 脚本,用于将 Hive 表中的数据导出到 MySQL 数据库中。脚本中使用了 Sqoop 工具,Sqoop 是一种用于在 Hadoop 和关系型数据库之间传输数据的工具。该脚本中定义了四个变量,分别是 mysql_db、mysql_host、mysql_user 和 mysql_pwd,用于指定 MySQL 数据库的相关信息。然后定义了一个导出数据的函数 export_data,该函数接收一个参数,用于指定需要导出的表名。在函数中,使用 Sqoop 命令将指定表的数据导出到 MySQL 数据库中。脚本中使用了 case 语句,根据传入的参数调用 export_data 函数导出指定的表,如果传入的是 all,则导出所有表。
阅读全文