错误1:如下,原因 应该是DbVisualizer默认的mysql驱动是5.7版本的,而我装的mysql是8.0.34的
An error occurred while establishing the connection:
Long Message:
Communications link failureThe last packet successfully received from the server was 70 milliseconds ago. The last packet sent successfully to the server was 65 milliseconds ago.
Details:
Type: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException
SQL State: 08S01
参考:https://www.cnblogs.com/hafiz/p/5879432.html
解决错误1,修改DbVisualizer的驱动,菜单tool|driver manager
选择mysql类型,然后选择一个8.0版本的驱动板这里我用的是8.0.25的驱动
更换驱动包后,又出现了一下问题: com/mysql/cj/jdbc/Driver : Unsupported major.minor version 52.0
An error occurred while establishing the connection:
Long Message:
com/mysql/cj/jdbc/Driver : Unsupported major.minor version 52.0Details:
Type: java.lang.UnsupportedClassVersionErrorStack Trace:
java.lang.UnsupportedClassVersionError: com/mysql/cj/jdbc/Driver : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.onseven.dbvis.S.L.ā(Z:1338)
at com.onseven.dbvis.S.B.ą(Z:356)
at com.onseven.dbvis.db.I.H.ň(Z:1480)
at com.onseven.dbvis.db.I.H.ij(Z:2144)
at com.onseven.dbvis.db.I.K.ij(Z:2474)
at com.onseven.dbvis.db.I.D.ġ(Z:1756)
at com.onseven.dbvis.K.B._.Ĝ(Z:2717)
at com.onseven.dbvis.K.B.L.Ă(Z:1374)
at com.onseven.dbvis.K.B.L.doInBackground(Z:1521)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
通过网上查找原因说是:当使用较高版本的 Java 开发工具包 (JDK) 编译类但在较低版本的 Java 运行时环境 (JRE) 上执行类时,Java 中会引发该错误。
而我的dbvisualizer是9.5.8的,详细信息如下(菜单栏 help|about)
解决方案:修改dbvisualizer的jdk版本
在Dbvisualizer安装根目录中.install4j文件夹下新建或修改pref_jre.cfg
文件内容为自己的jdk的安装目录,然后重启DbVisualizer。
修改成功的后,查看菜单help|about 如下
至此可以成功连接mysql.
此外我还修改了DbVisualizer的mysql默认驱动包,否则会DbVisualizer每次重启后,都需要重新再改一下mysql的驱动包。
默认驱动包位置如下:DbVisualizer安装目录\jdbc\mysql,该文件夹下有一个mysql.jar
我这里直接 将mysql-connector-java-8.0.26.jar拷贝进去,然后重命名为mysql.jar(重命名是需要关闭DbVisualizer)