datax离线同步oracle表到clickhouse实践1

news2024/11/15 15:48:09

时间:2024.01

目录
1、安装启动 oracle19c 容器
2、rpm包安装clickhouse
3、datax安装

4、datax同步
目标库根据要同步的表,按照clickhouse建表规范建表
编写json文件
编写增量同步shell脚本,加入 crond 定时任务


1、安装启动 oracle19c 容器

二、拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle


三. 创建Oracle 19c镜像的容器

3.1创建目录
[root@docker ~]# mkdir /opt/oradata
[root@docker ~]# chmod -R 777 /opt/oradata/
[root@docker ~]# mkdir /opt/to_oracle

3.2 创建实例
docker run -d -it --name oracle19c -p 11521:1521 -p 5500:5500 \
-v /opt/oradata:/opt/oracle/oradata \
-v /opt/to_oracle:/home/oracle/to_oracle \
registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:latest


3.3 查看日志
docker logs -f oracle19c


四、 修改密码
# 系统默认的system密码修改成oracle
docker exec oracle19c ./setPassword.sh oracle


5.1 进入容器
docker exec -it oracle19c /bin/bash


5.2 登录数据库
sqlplus sys/oracle@localhost:1521/ORCLCDB as sysdba
show pdbs;
alter session set container=ORCLPDB1;


5.4 查看数据文件位置
select file_name from dba_data_files;


5.6 创建数据表空间
create tablespace bigdata datafile '/opt/oracle/oradata/ORCLCDB/ORCLPDB1/bigdata.dbf' size 10G  autoextend on;

5.7 创建用户,指定默认表空间
create user bigdata identified by bigdata default tablespace bigdata;


5.8 用户授权
grant connect,resource,dba to bigdata;


5.3 连接可拔插数据库
sqlplus /nolog
conn bigdata/bigdata@ORCLPDB1

建表、插入数据
把 create.sql insert.sql 放在 /opt/to_oracle/

SQL> @/home/oracle/to_oracle/create.sql
文件内容

create table TDBA_TEST01
(
  TID          number primary key,
  TSN          varchar2(40),
  TNO          number,
  TAMT         number(15,2),
  CREATE_DATE  date not null,
  UPDATE_DATE  date,
  UPDATE_TIME  date
);


SQL> @/home/oracle/to_oracle/insert.sql
文件内容

INSERT INTO TDBA_TEST01 VALUES(1,'SN001',1,1.01,TO_DATE('2020-02-01','YYYY-MM-DD'),TO_DATE('2020-02-01','YYYY-MM-DD'),TO_DATE('2020-02-01 01:01:01','YYYY-MM-DD HH24:MI:SS'));
INSERT INTO TDBA_TEST01 VALUES(2,'SN002',2,2.12,TO_DATE('2020-02-02','YYYY-MM-DD'),TO_DATE('2020-02-02','YYYY-MM-DD'),TO_DATE('2020-02-02 01:01:01','YYYY-MM-DD HH24:MI:SS'));
INSERT INTO TDBA_TEST01 VALUES(3,'SN003',3,3.23,TO_DATE('2020-02-03','YYYY-MM-DD'),TO_DATE('2020-02-03','YYYY-MM-DD'),TO_DATE('2020-02-03 01:01:01','YYYY-MM-DD HH24:MI:SS'));
INSERT INTO TDBA_TEST01 VALUES(4,'SN004',4,4.34,TO_DATE('2020-02-04','YYYY-MM-DD'),TO_DATE('2020-02-04','YYYY-MM-DD'),TO_DATE('2020-02-04 01:01:01','YYYY-MM-DD HH24:MI:SS'));
INSERT INTO TDBA_TEST01 VALUES(5,'SN005',5,5.45,TO_DATE('2020-02-05','YYYY-MM-DD'),TO_DATE('2020-02-05','YYYY-MM-DD'),TO_DATE('2020-02-05 01:01:01','YYYY-MM-DD HH24:MI:SS'));
INSERT INTO TDBA_TEST01 VALUES(6,'SN006',6,6,TO_DATE('2020-02-06','YYYY-MM-DD'),TO_DATE('2020-02-06','YYYY-MM-DD'),TO_DATE('2020-02-06 01:01:01','YYYY-MM-DD HH24:MI:SS'));
INSERT INTO TDBA_TEST01 VALUES(7,'SN007',7,7.67,TO_DATE('2020-02-07','YYYY-MM-DD'),TO_DATE('2020-02-07','YYYY-MM-DD'),TO_DATE('2020-02-07 01:01:01','YYYY-MM-DD HH24:MI:SS'));
INSERT INTO TDBA_TEST01 VALUES(8,'SN008',8,8.78,TO_DATE('2020-02-08','YYYY-MM-DD'),TO_DATE('2020-02-08','YYYY-MM-DD'),TO_DATE('2020-02-08 01:01:01','YYYY-MM-DD HH24:MI:SS'));
INSERT INTO TDBA_TEST01 VALUES(9,'SN009',9,9,TO_DATE('2020-02-09','YYYY-MM-DD'),TO_DATE('2024-01-09','YYYY-MM-DD'),TO_DATE('2020-02-09 01:01:01','YYYY-MM-DD HH24:MI:SS'));
INSERT INTO TDBA_TEST01 VALUES(9,'SN009',9,9,TO_DATE('2020-02-09','YYYY-MM-DD'),TO_DATE('2024-01-09','YYYY-MM-DD'),TO_DATE('2020-02-09 01:01:01','YYYY-MM-DD HH24:MI:SS'));

2、rpm包安装clickhouse

[root@conda ~]# mkdir clickhouse22.3
[root@conda ~]# cd clickhouse22.3

下载clickhouse的rpm包
https://packages.clickhouse.com/rpm/stable/clickhouse-client-22.3.2.2-2.noarch.rpm
https://packages.clickhouse.com/rpm/stable/clickhouse-common-static-22.3.2.2-2.x86_64.rpm
https://packages.clickhouse.com/rpm/stable/clickhouse-common-static-dbg-22.3.2.2-2.x86_64.rpm
https://packages.clickhouse.com/rpm/stable/clickhouse-server-22.3.2.2-2.noarch.rpm

[root@conda clickhouse22.3]# ll
total 929924
-rw-r--r--. 1 root root     46748 Sep 22  2022 clickhouse-client-22.3.2.2-2.noarch.rpm
-rw-r--r--. 1 root root 178362876 Sep 22  2022 clickhouse-common-static-22.3.2.2-2.x86_64.rpm
-rw-r--r--. 1 root root 773751886 Sep 22  2022 clickhouse-common-static-dbg-22.3.2.2-2.x86_64.rpm
-rw-r--r--. 1 root root     72089 Sep 22  2022 clickhouse-server-22.3.2.2-2.noarch.rpm

[root@conda clickhouse22.3]# rpm -ivh *.rpm

自定义设置密码
bigdata


[root@conda clickhouse22.3]# clickhouse start

[root@conda clickhouse22.3]# clickhouse status
/var/run/clickhouse-server/clickhouse-server.pid file exists and contains pid = 10792.
The process with pid = 10792 is running.


[root@conda clickhouse22.3]# clickhouse-client --password bigdata -m
ClickHouse client version 22.3.2.1.
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 22.3.2 revision 54455.

conda :) 

create table TEST01
(
  TID          UInt32,
  TSN          String,
  TNO          UInt16,
  TAMT         Decimal(15,2),
  CREATE_DATE  Date,
  UPDATE_DATE  Date,
  UPDATE_TIME  DateTime
) ENGINE = MergeTree(CREATE_DATE, (TID), 8192)

3、datax安装

System Requirements
JDK(1.8以上,推荐1.8)
Python(推荐Python2.6.X) 我使用的CentOS7自带的 Python 2.7.5


直接下载DataX工具包:
DataX下载地址(http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz)

datax_ck.tar.gz
datax_ck.tar.gz下载icon-default.png?t=N7T8https://www.123pan.com/s/VTMXjv-pfA6v.html
提取码:xxxx

下载后解压至本地某个目录,进入bin目录,即可运行同步作业:
tar -zxvf datax_ck.tar.gz
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1436250.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

关于如何在Mac上安装Windows,看这篇文章就差不多了

启动转换(Boot Camp)助手可以让你在一些Mac电脑上安装Windows并引导到其中,就像在普通电脑上一样。现代苹果硅型号(M1、M2等)不支持启动转换助手,必须使用其他方法来运行Windows。 可以在M1或M2 Mac上使用启动转换助手吗 只有当Mac上有Intel(x86)处理器时,才能使用启…

Arcgis使用过程中常见问题解决方法

Arcgis无法连接数据库/数据库连接或创建失败解决方法 最近在使用arcgis过程中出现无法连接数据库或者是无法创建数据库。连接到数据库失败;无法创建新的数据库,权限被拒绝(如下图)。 出现这个原因是你所用的电脑系统文件dao360.…

生存类游戏《幻兽帕鲁》从部署服务器到开始体验全过程

SteamDB数据显示,《幻兽帕鲁》上线24小时内,在线人数峰值便突破200万,跻身Steam历史排行榜第二位。随着热度进一步发酵,《幻兽帕鲁》官方发布推文称,游戏发售不到6天,销量已经突破了 800万份。欢迎大家在阿…

香港公司员工遭遇2亿港币Deepfake诈骗; 阿里巴巴Qwen1.5震撼发布;通义千问App推新功能迎佳节

🦉 AI新闻 🚀 香港公司员工遭遇2亿港币Deepfake诈骗 摘要:近日,香港一家英国跨国企业的员工被Deepfake技术仿造的视频诈骗,损失2亿港币。骗子通过伪造高管的面貌和声音,用视频会议的形式命令其转账&#…

双非本科准备秋招(17.1)—— 力扣二叉树

1、257. 二叉树的所有路径 要求返回根节点到叶子节点的所有路径,这里用前序遍历就好。 每次递归前,都让字符串s加上当前节点的值和“->”,然后判断是否为叶子节点,如果是的话,说明这条路径是一个答案,因…

基于springboot实现二次元商品购物系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现二次元商品购物系统演示 摘要 时代的变化速度实在超出人类的所料,21世纪,计算机已经发展到各行各业,各个地区,它的载体媒介-计算机,大众称之为的电脑,是一种特高速的科学仪器&#xff0…

python + 蒙特卡罗 = 股市神器! 能用到A股吗?

蒙特卡罗模拟作为一种在金融领域广泛应用的强大统计技术,能够对金融资产(例如股票)的行为进行模拟建模。在本文中,我们将深入探讨如何在Python编程环境中实现蒙特卡罗模拟,以预测股票市场未来可能出现的情况。我们将利…

MySQL进阶45讲【12】为什么你的MySQL偶尔会卡一下

1 前言 平时的工作中,不知道大家有没有遇到过这样的场景,一条SQL语句,正常执行的时候特别快,但是有时也不知道怎么回事,它就会变得特别慢,并且这样的场景很难复现,它不只随机,而且持…

【Linux驱动】块设备驱动(二)—— 块设备读写(使用请求队列)

块设备的操作函数并没有类似于字符驱动中的read 和write函数,要实现读写操作,只能在请求处理函数中实现。这就分为两种,是否要使用请求队列,请求队列的主要作用是管理和调度IO请求。在以下情况中,一般需要用到请求队队…

Kafka 使用手册

kafka3.0 文章目录 kafka3.01. 什么是kafka?2. kafka基础架构3. kafka集群搭建4. kafka命令行操作主题命令行【topic】生产者命令行【producer】消费者命令行【consumer】 5. kafka生产者生产者消息发送流程Producer 发送原理普通的异步发送带回调函数的异步发送同步…

虚幻5源码版打包服务端

适用情况,windows系统,已经安装vs2022之类的,和UE5适配的版本 源码版使用 1.下载源码版,推荐下载 压缩包 tar.gz那个,zip和git clone我老是下载不下载来,只是这个压缩包要解压1个多小时… 2.点击 源码的…

C语言-4

排序算法简介 /*学习内容:冒泡排序(最基本的排序方法)选择排序(冒泡的优化)插入排序(在合适的位置插入合适的数据) *//*排序分类:1.内部排序待需要进行排序的数据全部存放到内存中&…

【Python基础】案例分析:电商分析

电商分析 1 案例:某年淘宝双12部分购物数据 1.1 数据:某年淘宝双12部分购物数据; 来源:天池数据平台 1.2 分析目的: 熟悉电商常用分析指标用户行为分析用户价值模型 2 熟悉数据 2.1 导入数据 import pandas as pd fpath …

Vscode编译运行多个C++文件

1.摘要 在使用Vscode编译单个文件网上很多教程,但是对多个文件编译会发现经常出问题,通过不断的借阅网友的教程改进终于完成C运行多个文件教程如下: 2.编译运行过程 2.1 初始配置过程 (1)Vscode以及MinGW配置教程很…

EasyRecovery数据恢复软件2024最新特别绿色版下载

EasyRecovery数据恢复软件是一款功能强大的工具,最新版本通常包含更多优化和新增功能,以提升用户体验和数据恢复成功率。由于软件版本会不断更新,我无法提供特定于最新版本的详细介绍,但我可以概述EasyRecovery的一般功能以及下载…

20240206在WIN10下下载安装RX580的驱动程序

20240206在WIN10下下载安装RX580的驱动程序 2024/2/6 19:24 百度搜索:RX580 驱动 我用的是X99主板的渲染服务器,只能装WIN10的64位系统。直接下载并安装最新的驱动程序就可以了! 另:我以前的电脑插的是RX550的显卡,直接…

推动海外云手机发展的几个因素

随着科技的不断发展,海外云手机作为一种新兴技术,在未来呈现出令人瞩目的发展趋势。本文将在用户需求、技术创新和全球市场前景等方面,探讨海外云手机在未来的发展。 1. 用户需求的引领: 随着人们对移动性和便捷性的需求不断增长&…

【数据结构和算法】--- 基于c语言排序算法的实现(1)

目录 一、排序的概念及其应用1.1排序的概念1.2 排序的应用1.3 常见的排序算法 二、插入排序2.1直接插入排序2.2 希尔排序2.2.1 预排序2.2.2 缩小gap2.2.3 小结 三、选择排序3.1 直接选择排序3.2 堆排序 一、排序的概念及其应用 1.1排序的概念 排序: 所谓排序&…

R语言 Error in make.names(col.names, unique = TRUE) : invalid multibyte string at ‘<b1><ea><cc><e2>‘

R语言导入CSV文件的时候&#xff0c;代码如下&#xff1a; data<-read.csv("data.csv") 出现以下报错&#xff1a; Error in make.names(col.names, unique TRUE) : invalid multibyte string at <b1><ea><cc><e2> Error in make.n…

LeetCode、17. 电话号码的字母组合【中等,dfs回溯】

文章目录 前言LeetCode、17. 电话号码的字母组合【中等&#xff0c;dfs回溯】题目与类型思路递归回溯优化&#xff1a;StringBuilder来回溯补充代码&#xff1a;2024.1.31&#xff08;简化&#xff09; 资料获取 前言 博主介绍&#xff1a;✌目前全网粉丝2W&#xff0c;csdn博…