Datax(2)-讀寫MySQL-To-Postgres

實現:使用DataX讀取MYSQL到PG
環境搭建,參照
Datax(1)-讀寫MYSQL-To-MYSQL-(Win10安裝)

一:PG建表

t_user_info

CREATE TABLE "public"."t_user_info" (
"id" int4 NOT NULL,
"name" varchar(255) COLLATE "default",
"content" text COLLATE "default",
"createdate" varchar(32) COLLATE "default",
CONSTRAINT "t_user_info_pkey" PRIMARY KEY ("id")
)
WITH (OIDS=FALSE);

ALTER TABLE "public"."t_user_info" OWNER TO "postgres";

二:編寫腳本mysql-2-pg.json

{
    "job": {
        "setting": {
            "speed": {
                "channel": 1
            }
        },
        "content": [
            {
                "reader": {
                    "name": "mysqlreader",
                    "parameter": {
                        "username": "root",
                        "password": "111111",
                        "column": [ "id", "name","content" ,"createdate"],
                        "splitPk": "id",
                        "connection": [
                            {
                                "table": [
                                    "t_user_info"
                                ],
                                "jdbcUrl": [
                                    "jdbc:mysql://127.0.0.1:3306/sourcedb"
                                ]
                            }
                        ]
                    }
                },
                "writer": {
                    "name": "postgresqlwriter",
                    "parameter": {
                        "username": "postgres",
                        "password": "111111",
                        "column": [ "id", "name","content","createdate"],
                        "preSql": [
                            "delete from t_user_info"
                        ],
                        "connection": [
                            {
                                "jdbcUrl": "jdbc:postgresql://127.0.0.1:5432/postgres",
                                "table": [
                                    "t_user_info"
                                ]
                            }
                        ]
                    }
                }
            }
        ]
    }
}

三:執行

datax> python .\bin\datax.py .\task\mysql-2-pg.json
2020-04-20 23:05:04.919 [job-0] INFO  StandAloneJobContainerCommunicator - Total 3 records, 125 bytes | Speed 12B/s, 0 records/s | Error 0 records, 0 bytes |  All Task WaitWriterTime 0.000s |  All Task WaitReaderTime 0.000s | Percentage 100.00%
2020-04-20 23:05:04.926 [job-0] INFO  JobContainer -
任務啓動時刻                    : 2020-04-20 23:04:45
任務結束時刻                    : 2020-04-20 23:05:04
任務總計耗時                    :                 19s
任務平均流量                    :               12B/s
記錄寫入速度                    :              0rec/s
讀出記錄總數                    :                   3
讀寫失敗總數                    :                   0

備註:
如果出現DataX亂碼
命令執行CHCP 65001回車
再執行 python .\bin\datax.py .\task\mysql-2-pg.json

四:驗證

PG

select * from "public"."t_user_info"
1	linux重啓mysql的命令	linux重啓mysql的命令	2020-04-19 21:18:58
2	jQuery給input綁定回車事件	jQuery給input綁定回車事件	2020-04-20 21:19:14
3	Web開發Session超時設置	Web開發Session超時設置	2020-04-21 21:19:19

完成

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章