centos安装数据库同步工具sqoop并导入数据,导出数据,添加定时任务

目录

1.安装jdk

1.1上传jdk安装包到/opt目录下并解压

1.2解压

1.3配置环境变量

2.安装hadoop

2.1.下载hadoop

2.2.解压hadoop

2.3配置环境变量

3.安装sqoop

3.1下载

3.2解压

3.3下载依赖包并复制到指定位置

3.3.1下载commons-lang-2.6-bin.tar.gz

3.3.2将mysql-connector-j-8.3.0.jar上传到sqoop的lib目录

3.4配置环境

4.使用

4.1导出mysql数据到hadoop

4.2将hadoop数据导入到mysql

4.3创建任务


1.安装jdk

1.1上传jdk安装包到/opt目录下并解压

1.2解压

解压示例

复制代码
cd /opt
tar -zxvf jdk-8u381-linux-x64.tar.gz

1.3配置环境变量

复制代码
JAVA_HOME=/opt/jdk1.8.0_381
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH

2.安装hadoop

2.1.下载hadoop

csdn资源审核一直审核中,有道需要登录,可以从互联网找下hadoop资源

复制代码
cd /opt
wget https://note.youdao.com/s/F3hrTVve

2.2.解压hadoop

复制代码
tar -xvf hadoop-2.8.5.tar.gz

2.3配置环境变量

复制代码
vim /etc/profile

增加如下内容

复制代码
export HADOOP_COMMON_HOME=/opt/hadoop-2.8.5
export PATH=$HADOOP_COMMON_HOME/bin:$PATH

export HADOOP_MAPRED_HOME=/opt/hadoop-2.8.5
export PATH=$HADOOP_MAPRED_HOME/bin:$PATH

使环境生效

复制代码
source /etc/profile

3.安装sqoop

3.1下载

复制代码
cd /opt
wget https://archive.apache.org/dist/sqoop/1.4.7/sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz

3.2解压

复制代码
cd /opt
tar -xvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz

3.3下载依赖包并复制到指定位置

3.3.1下载commons-lang-2.6-bin.tar.gz

复制代码
cd /opt
wget https://mirrors.tuna.tsinghua.edu.cn/apache/commons/lang/binaries/commons-lang-2.6-bin.tar.gz

解压后得到文件commons-lang-2.6.jar

复制代码
tar -zxvf commons-lang-2.6-bin.tar.gz

将文件commons-lang-2.6.jar复制到sqoop的lib目录

复制代码
cp /opt/commons-lang-2.6-bin/commons-lang-2.6/commons-lang-2.6.jar /opt/sqoop/lib

3.3.2将mysql-connector-j-8.3.0.jar上传到sqoop的lib目录

由于本地有mysql-connector-j-8.3.0.jar直接上传该jar到sqoop的lib目录

处理完示例

3.4配置环境

复制代码
vim /etc/profile

增加如下内容

复制代码
export SQOOP_HOME=/opt/sqoop
export CLASSPATH=$CLASSPASS:$SQOOP_HOME/lib
export PATH=$SQOOP_HOME/bin:$PATH

使环境生效

复制代码
source /etc/profile

4.使用

4.1导出mysql数据到hadoop

将数据库mysql://192.168.168.76:3306/test表kq_check_detail 的数据导出到/opt/test2

注意:/opt/test2 必须不存在

复制代码
sqoop import \
--connect jdbc:mysql://192.168.168.76:3306/test \
--username test \
--password 123456 \
--target-dir /opt/test2 \
--query 'SELECT * FROM kq_check_detail WHERE id!=5 AND $CONDITIONS' \
--num-mappers 1 \
--bindir /opt/sqoop/lib

4.2将hadoop数据导入到mysql

/opt/test2导入到数据库mysql://192.168.168.76:3306/test2的表kq_check_detail 中

复制代码
sqoop export \
--connect jdbc:mysql://192.168.168.76:3306/test2 \
--driver com.mysql.jdbc.Driver \
--username test \
--password 123456 \
--table kq_check_detail \
--export-dir /opt/test2 \
-m 1 

4.3创建任务

复制代码
sqoop job \
 --create test\
 -- import \
 --connect jdbc:mysql://192.168.168.76:3306/test \
 --table kq_check_detail \
 --username root \
 --password 123456 \
 --incremental append \
 --check-column update_time \
 --last-value '2024-07-10 00:00:00' \
 --target-dir /data/test/kq_check_detail \
 --m 3 

4.4执行任务

复制代码
 sqoop job --exec test

4.5删除任务

复制代码
sqoop job \
 --delete test \
 -- import \
 --connect jdbc:mysql://192.168.168.76:3306/test \
 --table kq_check_detail \
 --username test \
 --password 123456\
 --incremental append \
 --check-column update_time \
 --last-value '2024-07-10 00:00:00' \
 --target-dir /data/test/kq_check_detail \
 --m 3
相关推荐
林九生17 分钟前
【CentOS7】CentOS 7 Docker 安装
centos
小白勇闯网安圈29 分钟前
Vmware的Ubuntu构建极简版Linux发行版
linux
刘某的Cloud34 分钟前
shell脚本-read-输入
linux·运维·bash·shell·read
broad-sky1 小时前
Ubuntu上查看USB相机连接的是哪个口,如何查看
linux·数码相机·ubuntu
秋深枫叶红1 小时前
嵌入式第三十七篇——linux系统编程——线程控制
linux·学习·线程·系统编程
shaohui9731 小时前
ARMv7 linux中断路由以及处理
linux·gic·cpsr·armv7
三小尛1 小时前
linux的开发工具vim
linux·运维·vim
陈陈爱java1 小时前
Conda 常用命令行
linux·windows·conda
twdnote1 小时前
dokcer 环境中集成LibreOffice
linux
ChristXlx2 小时前
Linux安装redis(虚拟机适用)
linux·运维·redis