当前位置: 首页 > news >正文

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创建任务

4.4执行任务

4.5删除任务

4.6整个库导出


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资源

https://download.csdn.net/download/wangwenzhe222/89530521?spm=1001.2014.3001.5501

cd /opt然后将hadoop包上传到该目录

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:$PATHexport 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

4.6整个库导出

导出后会以表名称创建目录(/opt/all_tables下创建)

sqoop import-all-tables "-Dorg.apache.sqoop.splitter.allow_text_splitter=true" \
--connect jdbc:mysql://192.168.168.76:3306/test \
--username root\
--password 123456 \
--warehouse-dir /opt/all_tables

http://www.lryc.cn/news/397725.html

相关文章:

  • asp .net core 避免请求body数据量过大
  • 搭建discuz论坛(lvs+nginx+http+mysql+nfs)8台服务器
  • 就业平台小程序的设计
  • hid-ft260驱动学习笔记 5 - ft260_i2c_probe
  • Android上如何使用perfetto分析systrace
  • React Hooks学习笔记
  • BGP第二日
  • rabbitmq集群创建admin用户之后,提示can access virtual hosts是No access状态
  • ARM功耗管理之多核处理器启动
  • java使用easypoi模版导出word详细步骤
  • Android 内部保持数据的方式
  • uniapp 表格,动态表头表格封装渲染
  • beyond Compare连接 openWrt 和 VsCode
  • 量化机器人能否识别市场机会?
  • 香橙派AIpro开发板评测:部署yolov5模型实现图像和视频中物体的识别
  • MongoDB教程(二):mongoDB引用shell
  • A133 Android10 root修改
  • 实验场:在几分钟内使用 Bedrock Anthropic Models 和 Elasticsearch 进行 RAG 实验
  • 代理详解之静态代理、动态代理、SpringAOP实现
  • Laravel - laravel-websockets 开发详解
  • vue3 学习笔记04 -- axios的使用及封装
  • 键盘快捷键设置录入
  • 刷题Day49|647. 回文子串、516.最长回文子序列
  • 关于transformers库验证时不进入compute_metrics方法的一些坑
  • 苹果提出RLAIF:轻量级语言模型编写代码
  • [leetcode] shortest-subarray-with-sum-at-least-k 和至少为 K 的最短子数组
  • 专业140+总分420+天津大学815信号与系统考研经验天大电子信息与通信工程,真题,大纲,参考书。
  • 前端如何取消接口调用
  • k8s 容器环境下的镜像如何转换为docker 使用
  • FreeRTOS 队列