前文回顧 實現一個簡單的Database系列 譯註:cstack在github維護了一個簡單的、類似sqlite的資料庫實現,通過這個簡單的項目,可以很好的理解資料庫是如何運行的。本文是第八篇,主要是對B-tree的葉子節點格式的實現 Part 8 B-Tree葉子節點格式 我們準備把表的格式從非排 ...
DataX同步Mysql數據報錯
錯誤信息
2023-02-13 09:58:20.735 [main] WARN Engine - prioriy set to 0, because NumberFormatException, the value is: null
2023-02-13 09:58:20.738 [main] INFO PerfTrace - PerfTrace traceId=job_-1, isEnable=false, priority=0
2023-02-13 09:58:20.738 [main] INFO JobContainer - DataX jobContainer starts job.
2023-02-13 09:58:20.739 [main] INFO JobContainer - Set jobId = 0
2023-02-13 09:58:21.033 [job-0] WARN DBUtil - test connection of [jdbc:mysql://hadoop102:3306/gmall] failed, for Code:[DBUtilErrorCode-10], Description:[連接資料庫失敗. 請檢查您的 賬號、密碼、資料庫名稱、IP、Port或者向 DBA 尋求幫助(註意網路環境).]. - 具體錯誤信息為:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server..
2023-02-13 09:58:21.037 [job-0] ERROR RetryUtil - Exception when calling callable, 異常Msg:DataX無法連接對應的資料庫,可能原因是:1) 配置的ip/port/database/jdbc錯誤,無法連接。2) 配置的username/password錯誤,鑒權失敗。請和DBA確認該資料庫的連接信息是否正確。
java.lang.Exception: DataX無法連接對應的資料庫,可能原因是:1) 配置的ip/port/database/jdbc錯誤,無法連接。2) 配置的username/password錯誤,鑒權失敗。請和DBA確認該資料庫的連接信息是否正確。
at com.alibaba.datax.plugin.rdbms.util.DBUtil$2.call(DBUtil.java:71) ~[plugin-rdbms-util-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.plugin.rdbms.util.DBUtil$2.call(DBUtil.java:51) ~[plugin-rdbms-util-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.common.util.RetryUtil$Retry.call(RetryUtil.java:164) ~[datax-common-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.common.util.RetryUtil$Retry.doRetry(RetryUtil.java:111) ~[datax-common-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.common.util.RetryUtil.executeWithRetry(RetryUtil.java:30) [datax-common-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.plugin.rdbms.util.DBUtil.chooseJdbcUrl(DBUtil.java:51) [plugin-rdbms-util-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.plugin.rdbms.reader.util.OriginalConfPretreatmentUtil.dealJdbcAndTable(OriginalConfPretreatmentUtil.java:92) [plugin-rdbms-util-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.plugin.rdbms.reader.util.OriginalConfPretreatmentUtil.simplifyConf(OriginalConfPretreatmentUtil.java:59) [plugin-rdbms-util-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.plugin.rdbms.reader.util.OriginalConfPretreatmentUtil.doPretreatment(OriginalConfPretreatmentUtil.java:33) [plugin-rdbms-util-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.plugin.rdbms.reader.CommonRdbmsReader$Job.init(CommonRdbmsReader.java:55) [plugin-rdbms-util-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.plugin.reader.mysqlreader.MysqlReader$Job.init(MysqlReader.java:37) [mysqlreader-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.core.job.JobContainer.initJobReader(JobContainer.java:673) [datax-core-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.core.job.JobContainer.init(JobContainer.java:303) [datax-core-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.core.job.JobContainer.start(JobContainer.java:113) [datax-core-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.core.Engine.start(Engine.java:92) [datax-core-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.core.Engine.entry(Engine.java:171) [datax-core-0.0.1-SNAPSHOT.jar:na]
at com.alibaba.datax.core.Engine.main(Engine.java:204) [datax-core-0.0.1-SNAPSHOT.jar:na]
2023-02-13 09:58:22.038 [job-0] ERROR RetryUtil - Exception when calling callable, 即將嘗試執行第1次重試.本次重試計劃等待[1000]ms,實際等待[1001]ms, 異常Msg:[DataX無法連接對應的資料庫,可能原因是:1) 配置的ip/port/database/jdbc錯誤,無法連接。2) 配置的username/password錯誤,鑒權失敗。請和DBA確認該資料庫的連接信息是否正確。]
2023-02-13 09:58:22.042 [job-0] WARN DBUtil - test connection of [jdbc:mysql://hadoop102:3306/gmall] failed, for Code:[DBUtilErrorCode-10], Description:[連接資料庫失敗. 請檢查您的 賬號、密碼、資料庫名稱、IP、Port或者向 DBA 尋求幫助(註意網路環境).]. - 具體錯誤信息為:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server..
2023-02-13 09:58:24.042 [job-0] ERROR RetryUtil - Exception when calling callable, 即將嘗試執行第2次重試.本次重試計劃等待[2000]ms,實際等待[2000]ms, 異常Msg:[DataX無法連接對應的資料庫,可能原因是:1) 配置的ip/port/database/jdbc錯誤,無法連接。2) 配置的username/password錯誤,鑒權失敗。請和DBA確認該資料庫的連接信息是否正確。]
2023-02-13 09:58:24.048 [job-0] WARN DBUtil - test connection of [jdbc:mysql://hadoop102:3306/gmall] failed, for Code:[DBUtilErrorCode-10], Description:[連接資料庫失敗. 請檢查您的 賬號、密碼、資料庫名稱、IP、Port或者向 DBA 尋求幫助(註意網路環境).]. - 具體錯誤信息為:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server..
2023-02-13 09:58:28.049 [job-0] ERROR RetryUtil - Exception when calling callable, 即將嘗試執行第3次重試.本次重試計劃等待[4000]ms,實際等待[4001]ms, 異常Msg:[DataX無法連接對應的資料庫,可能原因是:1) 配置的ip/port/database/jdbc錯誤,無法連接。2) 配置的username/password錯誤,鑒權失敗。請和DBA確認該資料庫的連接信息是否正確。]
2023-02-13 09:58:28.054 [job-0] WARN DBUtil - test connection of [jdbc:mysql://hadoop102:3306/gmall] failed, for Code:[DBUtilErrorCode-10], Description:[連接資料庫失敗. 請檢查您的 賬號、密碼、資料庫名稱、IP、Port或者向 DBA 尋求幫助(註意網路環境).]. - 具體錯誤信息為:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server..
2023-02-13 09:58:36.055 [job-0] ERROR RetryUtil - Exception when calling callable, 即將嘗試執行第4次重試.本次重試計劃等待[8000]ms,實際等待[8000]ms, 異常Msg:[DataX無法連接對應的資料庫,可能原因是:1) 配置的ip/port/database/jdbc錯誤,無法連接。2) 配置的username/password錯誤,鑒權失敗。請和DBA確認該資料庫的連接信息是否正確。]
2023-02-13 09:58:36.064 [job-0] WARN DBUtil - test connection of [jdbc:mysql://hadoop102:3306/gmall] failed, for Code:[DBUtilErrorCode-10], Description:[連接資料庫失敗. 請檢查您的 賬號、密碼、資料庫名稱、IP、Port或者向 DBA 尋求幫助(註意網路環境).]. - 具體錯誤信息為:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server..
2023-02-13 09:58:52.066 [job-0] ERROR RetryUtil - Exception when calling callable, 即將嘗試執行第5次重試.本次重試計劃等待[16000]ms,實際等待[16001]ms, 異常Msg:[DataX無法連接對應的資料庫,可能原因是:1) 配置的ip/port/database/jdbc錯誤,無法連接。2) 配置的username/password錯誤,鑒權失敗。請和DBA確認該資料庫的連接信息是否正確。]
2023-02-13 09:58:52.069 [job-0] WARN DBUtil - test connection of [jdbc:mysql://hadoop102:3306/gmall] failed, for Code:[DBUtilErrorCode-10], Description:[連接資料庫失敗. 請檢查您的 賬號、密碼、資料庫名稱、IP、Port或者向 DBA 尋求幫助(註意網路環境).]. - 具體錯誤信息為:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server..
^C[Error] DataX receive unexpected signal 2, starts to suicide.
2023-02-13 09:59:22
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.212-b10 mixed mode):
"SIGINT handler" #10 daemon prio=9 os_prio=0 tid=0x00007fc7cc001000 nid=0x62f4 runnable [0x00007fc7d5634000]
java.lang.Thread.State: RUNNABLE
at java.lang.Thread.run(Thread.java:747)
"Abandoned connection cleanup thread" #8 daemon prio=5 os_prio=0 tid=0x00007fc7f4585800 nid=0x62e9 in Object.wait() [0x00007fc7d5da9000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)
- locked <0x00000000ec4eb448> (a java.lang.ref.ReferenceQueue$Lock)
at com.mysql.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:43)
"Service Thread" #7 daemon prio=9 os_prio=0 tid=0x00007fc7f40d5800 nid=0x62e7 runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C1 CompilerThread1" #6 daemon prio=9 os_prio=0 tid=0x00007fc7f40b8800 nid=0x62e6 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C2 CompilerThread0" #5 daemon prio=9 os_prio=0 tid=0x00007fc7f40b5800 nid=0x62e5 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Signal Dispatcher" #4 daemon prio=9 os_prio=0 tid=0x00007fc7f40b4000 nid=0x62e4 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Finalizer" #3 daemon prio=8 os_prio=0 tid=0x00007fc7f4081000 nid=0x62e3 in Object.wait() [0x00007fc7d7efd000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000eab08ed0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)
- locked <0x00000000eab08ed0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:165)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:216)
"Reference Handler" #2 daemon prio=10 os_prio=0 tid=0x00007fc7f407e000 nid=0x62e2 in Object.wait() [0x00007fc7d7ffe000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000eab06bf8> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:502)
at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
- locked <0x00000000eab06bf8> (a java.lang.ref.Reference$Lock)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)
"job-0" #1 prio=5 os_prio=0 tid=0x00007fc7f400a800 nid=0x62de waiting on condition [0x00007fc7fda2d000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.alibaba.datax.common.util.RetryUtil$Retry.doRetry(RetryUtil.java:148)
at com.alibaba.datax.common.util.RetryUtil.executeWithRetry(RetryUtil.java:30)
at com.alibaba.datax.plugin.rdbms.util.DBUtil.chooseJdbcUrl(DBUtil.java:51)
at com.alibaba.datax.plugin.rdbms.reader.util.OriginalConfPretreatmentUtil.dealJdbcAndTable(OriginalConfPretreatmentUtil.java:92)
at com.alibaba.datax.plugin.rdbms.reader.util.OriginalConfPretreatmentUtil.simplifyConf(OriginalConfPretreatmentUtil.java:59)
at com.alibaba.datax.plugin.rdbms.reader.util.OriginalConfPretreatmentUtil.doPretreatment(OriginalConfPretreatmentUtil.java:33)
at com.alibaba.datax.plugin.rdbms.reader.CommonRdbmsReader$Job.init(CommonRdbmsReader.java:55)
at com.alibaba.datax.plugin.reader.mysqlreader.MysqlReader$Job.init(MysqlReader.java:37)
at com.alibaba.datax.core.job.JobContainer.initJobReader(JobContainer.java:673)
at com.alibaba.datax.core.job.JobContainer.init(JobContainer.java:303)
at com.alibaba.datax.core.job.JobContainer.start(JobContainer.java:113)
at com.alibaba.datax.core.Engine.start(Engine.java:92)
at com.alibaba.datax.core.Engine.entry(Engine.java:171)
at com.alibaba.datax.core.Engine.main(Engine.java:204)
解決方案: 排查了配置的ip/port/database/jdbc/username/password後,發現都沒有問題,最後是在datax/plugin/reader/mysqlreader/libs/ 中發現Java連接mysql的驅動包太老了,我的資料庫版本為8.0.31,datax的lib下驅動包為mysql-connector-java-5.1.34.jar,把對應資料庫版本的驅動包移過來以後就成功解決了
[aluna@hadoop102 datax]$ cd plugin/
[aluna@hadoop102 plugin]$ ll
總用量 8
drwxr-xr-x. 20 aluna aluna 4096 10月 12 2019 reader
drwxr-xr-x. 22 aluna aluna 4096 10月 12 2019 writer
[aluna@hadoop102 plugin]$ cd reader/
[aluna@hadoop102 reader]$ ll
總用量 0
drwxr-xr-x. 3 aluna aluna 111 10月 12 2019 cassandrareader
drwxr-xr-x. 3 aluna aluna 106 10月 12 2019 drdsreader
drwxr-xr-x. 3 aluna aluna 105 10月 12 2019 ftpreader
drwxr-xr-x. 3 aluna aluna 111 10月 12 2019 hbase094xreader
drwxr-xr-x. 3 aluna aluna 110 10月 12 2019 hbase11xreader
drwxr-xr-x. 3 aluna aluna 106 10月 12 2019 hdfsreader
drwxr-xr-x. 3 aluna aluna 109 10月 12 2019 mongodbreader
drwxr-xr-x. 3 aluna aluna 107 10月 12 2019 mysqlreader
drwxr-xr-x. 3 aluna aluna 106 10月 12 2019 odpsreader
drwxr-xr-x. 3 aluna aluna 108 10月 12 2019 oraclereader
drwxr-xr-x. 3 aluna aluna 105 10月 12 2019 ossreader
drwxr-xr-x. 3 aluna aluna 105 10月 12 2019 otsreader
drwxr-xr-x. 3 aluna aluna 79 10月 12 2019 otsstreamreader
drwxr-xr-x. 3 aluna aluna 112 10月 12 2019 postgresqlreader
drwxr-xr-x. 3 aluna aluna 107 10月 12 2019 rdbmsreader
drwxr-xr-x. 3 aluna aluna 111 10月 12 2019 sqlserverreader
drwxr-xr-x. 3 aluna aluna 108 10月 12 2019 streamreader
drwxr-xr-x. 3 aluna aluna 109 10月 12 2019 txtfilereader
[aluna@hadoop102 reader]$ cd mysqlreader/
[aluna@hadoop102 mysqlreader]$ ll
總用量 20
drwxr-xr-x. 2 aluna aluna 4096 10月 12 2019 libs
-rw-r--r--. 1 aluna aluna 7322 11月 24 2017 mysqlreader-0.0.1-SNAPSHOT.jar
-rw-r--r--. 1 aluna aluna 259 11月 24 2017 plugin_job_template.json
-rwxr-xr-x. 1 aluna aluna 345 11月 24 2017 plugin.json
[aluna@hadoop102 mysqlreader]$ cd libs/
[aluna@hadoop102 libs]$ ll
總用量 7732
-rw-r--r--. 1 aluna aluna 518641 11月 24 2017 commons-collections-3.0.jar
-rw-r--r--. 1 aluna aluna 185140 11月 24 2017 commons-io-2.4.jar
-rw-r--r--. 1 aluna aluna 412739 11月 24 2017 commons-lang3-3.3.2.jar
-rw-r--r--. 1 aluna aluna 1599627 11月 24 2017 commons-math3-3.1.1.jar
-rw-r--r--. 1 aluna aluna 95053 11月 24 2017 datax-common-0.0.1-SNAPSHOT.jar
-rw-r--r--. 1 aluna aluna 1952759 11月 24 2017 druid-1.0.15.jar
-rw-r--r--. 1 aluna aluna 372746 11月 24 2017 fastjson-1.1.46.sec01.jar
-rw-r--r--. 1 aluna aluna 934783 11月 24 2017 guava-r05.jar
-rw-r--r--. 1 aluna aluna 45024 11月 24 2017 hamcrest-core-1.3.jar
-rw-r--r--. 1 aluna aluna 264600 11月 24 2017 logback-classic-1.0.13.jar
-rw-r--r--. 1 aluna aluna 418870 11月 24 2017 logback-core-1.0.13.jar
-rw-r--r--. 1 aluna aluna 960372 11月 24 2017 mysql-connector-java-5.1.34.jar
-rw-r--r--. 1 aluna aluna 95960 11月 24 2017 plugin-rdbms-util-0.0.1-SNAPSHOT.jar
-rw-r--r--. 1 aluna aluna 32119 11月 24 2017 slf4j-api-1.7.10.jar
[aluna@hadoop102 libs]$ rm -rf mysql-connector-java-5.1.34.jar
[aluna@hadoop102 libs]$ ll
總用量 6792
-rw-r--r--. 1 aluna aluna 518641 11月 24 2017 commons-collections-3.0.jar
-rw-r--r--. 1 aluna aluna 185140 11月 24 2017 commons-io-2.4.jar
-rw-r--r--. 1 aluna aluna 412739 11月 24 2017 commons-lang3-3.3.2.jar
-rw-r--r--. 1 aluna aluna 1599627 11月 24 2017 commons-math3-3.1.1.jar
-rw-r--r--. 1 aluna aluna 95053 11月 24 2017 datax-common-0.0.1-SNAPSHOT.jar
-rw-r--r--. 1 aluna aluna 1952759 11月 24 2017 druid-1.0.15.jar
-rw-r--r--. 1 aluna aluna 372746 11月 24 2017 fastjson-1.1.46.sec01.jar
-rw-r--r--. 1 aluna aluna 934783 11月 24 2017 guava-r05.jar
-rw-r--r--. 1 aluna aluna 45024 11月 24 2017 hamcrest-core-1.3.jar
-rw-r--r--. 1 aluna aluna 264600 11月 24 2017 logback-classic-1.0.13.jar
-rw-r--r--. 1 aluna aluna 418870 11月 24 2017 logback-core-1.0.13.jar
-rw-r--r--. 1 aluna aluna 95960 11月 24 2017 plugin-rdbms-util-0.0.1-SNAPSHOT.jar
-rw-r--r--. 1 aluna aluna 32119 11月 24 2017 slf4j-api-1.7.10.jar
[aluna@hadoop102 libs]$ rz -E
rz waiting to receive.
[aluna@hadoop102 libs]$ ll
總用量 9252
-rw-r--r--. 1 aluna aluna 518641 11月 24 2017 commons-collections-3.0.jar
-rw-r--r--. 1 aluna aluna 185140 11月 24 2017 commons-io-2.4.jar
-rw-r--r--. 1 aluna aluna 412739 11月 24 2017 commons-lang3-3.3.2.jar
-rw-r--r--. 1 aluna aluna 1599627 11月 24 2017 commons-math3-3.1.1.jar
-rw-r--r--. 1 aluna aluna 95053 11月 24 2017 datax-common-0.0.1-SNAPSHOT.jar
-rw-r--r--. 1 aluna aluna 1952759 11月 24 2017 druid-1.0.15.jar
-rw-r--r--. 1 aluna aluna 372746 11月 24 2017 fastjson-1.1.46.sec01.jar
-rw-r--r--. 1 aluna aluna 934783 11月 24 2017 guava-r05.jar
-rw-r--r--. 1 aluna aluna 45024 11月 24 2017 hamcrest-core-1.3.jar
-rw-r--r--. 1 aluna aluna 264600 11月 24 2017 logback-classic-1.0.13.jar
-rw-r--r--. 1 aluna aluna 418870 11月 24 2017 logback-core-1.0.13.jar
-rw-r--r--. 1 aluna aluna 2515519 9月 4 05:54 mysql-connector-j-8.0.31.jar
-rw-r--r--. 1 aluna aluna 95960 11月 24 2017 plugin-rdbms-util-0.0.1-SNAPSHOT.jar
-rw-r--r--. 1 aluna aluna 32119 11月 24 2017 slf4j-api-1.7.10.jar