使用Datax插件时写入MySQL数据库遇到Could not retrieve transation read-only status server

问题描述:在使用Datax插件将数据从hive导入mysql时,发现写入MySQL报错 :Could not retrieve transation read-only status server

 

查找解决方案时,发现有以下解决方案:

1、修改 数据库的隔离级别,将 REPEATABLE-READ修改为READ-COMMITED, ----不适用,查看数据库的隔离级别,发现不需修改

mysql> SHOW VARIABLES LIKE '%iso%';
+-----------------------+-----------------+
| Variable_name         | Value           |
+-----------------------+-----------------+
| transaction_isolation | READ-COMMITTED  |
+-----------------------+-----------------+

2、匹配数据库和应用中数据库驱动版本(mysql驱动版本不一致)   ----

-查看MySQL版本:

mysql> select version();
+------------+
| VERSION()  |
+------------+
| 8.0.16     |
+------------+

-查看Datax插件MySQL驱动版本:

root@datax:~/datax/plugin/writer/mysqlwriter/libs$ ls mysql-connector*
mysql-connector-java-5.1.34.jar

下载对应的MySQL驱动版本:https://static.runoob.com/download/mysql-connector-java-8.0.16.jar

解决!

你可能感兴趣的:(使用总结)