#Hadoop 部署 (集群模式)
https://abc.htmltoo.com/thread-46155.htm
#hive 部署
https://abc.htmltoo.com/thread-46156.htm
IP | 服务 | 角色 |
192.168.34.30 | NameNode、SecondaryNameNode、ResourceManager、sqoop | node1 |
192.168.34.31 | DataNode、NodeManager | node2 |
192.168.34.32 | DataNode、NodeManager |
wget http://mirror.bit.edu.cn/apache/sqoop/1.4.7/sqoop-1.4.7.tar.gz
mkdir -p /opt/sqoop
tar -zxvf sqoop-1.4.7.tar.gz -C /opt/sqoop
#配置hive环境变量
[root@node1 hive]#vi /etc/profile
#添加如下环境变量
JAVA_HOME=/usr/java/jdk1.8.0_181-amd64
HIVE_HOME=/opt/hive/apache-hive-3.1.2-bin
SQOOP_HOME=/opt/sqoop/sqoop-1.4.7
export HADOOP_HOME=/opt/hadoop/hadoop-3.1.4
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$SQOOP_HOME/bin
source /etc/profile
cd /opt/sqoop/sqoop-1.4.7/conf
cp sqoop-env-template.sh sqoop-env.sh
vi sqoop-env.sh
#添加内容以下是我的环境路径,请替换成自己环境的
export HADOOP_COMMON_HOME=/opt/hadoop/hadoop-3.1.4
export HADOOP_MAPRED_HOME=/opt/hadoop/hadoop-3.1.4
export HIVE_HOME=/opt/hive/apache-hive-3.1.2-bin
---启动Sqoop
sqoop help
-Available commands:
codegen Generate code to interact with database records
create-hive-table Import a table definition into Hive
eval Evaluate a SQL statement and display the results
export Export an HDFS directory to a database table
help List available commands
import Import a table from a database to HDFS
import-all-tables Import tables from a database to HDFS
import-mainframe Import datasets from a mainframe server to HDFS
job Work with saved jobs
list-databases List available databases on a server
list-tables List available tables in a database
merge Merge results of incremental imports
metastore Run a standalone Sqoop metastore
version Display version information
---列出所有数据库, 请替换成自己的数据库连接用户名和密码
sqoop list-databases \
--connect jdbc:mysql://192.168.34.24:3306/ \
--username root \
--password root
---上传mysql 包
https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.42/mysql-connector-java-5.1.42.jar
cp mysql-connector-java-5.1.42.jar /opt/sqoop/sqoop-1.4.7/lib #复制到sqoop lib 目录
安装前默认你已经安装hadoop、hive和mysql。博主使用的版本是hadoop3.1.4、hive3.1.2和 mysql5.7
一、Sqoop 是什么
Sqoop是一款用于hadoop和关系型数据库之间数据导入导出的工具。你可以通过sqoop把数据从数据库(比如mysql,oracle)导入到hdfs中;也可以把数据从hdfs中导出到关系型数据库中。Sqoop通过Hadoop的MapReduce导入导出,因此提供了很高的并行性能以及良好的容错性。
二、Sqoop优势
- 高效、可控地利用资源,任务并行度,超时时间等
- 数据类型映射与转换,可自动进行,用户也可自定义
- 支持多种数据库。MySQL、Oracle、PostgreSQL