欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL數(shù)據(jù)同步到Doris的四種方式

 更新時間:2024年02月01日 11:47:54   作者:m0_37559973  
這篇文章給大家介紹了MySQL數(shù)據(jù)同步到Doris的四種方式,CSV文件方式,JDBC 編碼方式,JDBC Catalog 方式和Binlog Load 方式,并通過代碼示例給大家介紹的非常詳細,需要的朋友可以參考下

1.CSV文件方式

當mysql與doris服務之間無法通過網(wǎng)絡互聯(lián)時,可以通過將mysql數(shù)據(jù)導出成csv文件,然后再在doris服務器導入csv文件的方式進行同步數(shù)據(jù)。

1.1 導出mysql數(shù)據(jù)

使用select * into outfile 命令導出csv數(shù)據(jù)

select * into outfile 'F:\\24\\mysql\\dim_area.csv' fields terminated by '\t' lines terminated by '\n' from dim_area;

導出的文件格式如下:

需要在mysql的配置文件中設置secure_file_priv=導出的文件路徑,如上面案例中F:/24/mysql,才能導出文件。

1.2 導入數(shù)據(jù)

將mysql導出的csv文件上傳到doris服務器之后,可以通過Stream Load和MySQL Load兩種方式導入數(shù)據(jù)進doris數(shù)據(jù)庫中。

1)Stream Load導入

Stream load 是一個同步的導入方式,用戶通過發(fā)送 HTTP 協(xié)議發(fā)送請求將本地文件或數(shù)據(jù)流導入到 Doris 中。可以通過 HTTP 協(xié)議提交導入命令。

 curl --location-trusted -u root -T /home/weisx/opt/doris/local_import_data/dim_area.csv -H "columns:id,level,parent_code,area_code,name,short_name,merger_name,pinyin,lng,lat,pcode,ccode,acode,tcode,vcode" -H "label:label_dim_area" -H "column_separator:\t" -H "format:csv" http://localhost:8030/api/demo/dim_area/_stream_load

2)MySQL Load導入

MySql load 主和Stream Load功能相似, 都是導入本地文件到Doris集群中, 因此MySQL Load實現(xiàn)復用了StreamLoad的基礎導入能力。執(zhí)行MySQL Load語句的時候, 客戶端命令必須帶有--local-infile參數(shù), 同時還需要設置FE的配置mysql_load_server_secure_path開啟服務端導入功能。

mysql -u root -p -P9030 -h127.0.0.1 --local-infile=1

LOAD DATA INFILE '/home/hadoop/opt/data_doris/dim_area.csv' INTO TABLE article.dim_area COLUMNS TERMINATED BY '\t';

2.JDBC 編碼方式

通過編程方式,利用jdbc讀取mysql中的數(shù)據(jù),然后可以通過jdbc或者Stream Load方式插入數(shù)據(jù)到doris中。Stream Load java代碼實現(xiàn)可參考:Doris:StreamLoad導入數(shù)據(jù)-CSDN博客

3.JDBC Catalog 方式

JDBC Catalog 通過標準 JDBC 協(xié)議,連接其他數(shù)據(jù)源。連接后,Doris 會自動同步數(shù)據(jù)源下的 Database 和 Table 的元數(shù)據(jù),以便快速訪問這些外部數(shù)據(jù)。

3.1 上傳mysql驅(qū)動包

需將 Jar 包預先存放在 FE 和 BE 部署目錄的 jdbc_drivers/ 目錄下。系統(tǒng)會自動在這個目錄下尋找。該目錄的位置,也可以由 fe.conf 和 be.conf 中的 jdbc_drivers_dir 配置修改。

修改fe和be配置文件,指定jdbc_drivers_dir目錄。

3.2 創(chuàng)建mysql catalog

####mysql 8

CREATE CATALOG jdbc_mysql_233_8 PROPERTIES (
    "type"="jdbc",
    "user"="root",
    "password"="123456",
    "jdbc_url" = "jdbc:mysql://192.168.110.233:3307/demo",
    "driver_url" = "mysql-connector-java-8.0.30.jar",
    "driver_class" = "com.mysql.cj.jdbc.Driver"
)

####mysql 5

CREATE CATALOG jdbc_mysql_233_5  PROPERTIES (
    "type"="jdbc",
    "user"="root",
    "password"="123456",
    "jdbc_url" = "jdbc:mysql://192.168.110.233:3306/demo",
    "driver_url" = "mysql-connector-java-5.1.47.jar",
    "driver_class" = "com.mysql.jdbc.Driver"
)

3.3. 插入數(shù)據(jù)

insert into internal.demo.dim_area select * from demo.dim_area

4.Binlog Load 方式

Binlog Load提供了一種使Doris增量同步用戶在Mysql數(shù)據(jù)庫的對數(shù)據(jù)更新操作的CDC(Change Data Capture)功能。需要安裝Canal采集mysql實時日志信息。

以上就是MySQL數(shù)據(jù)同步到Doris的N種方式的詳細內(nèi)容,更多關于MySQL數(shù)據(jù)同步Doris的資料請關注腳本之家其它相關文章!

相關文章

最新評論