Wanneer u het MySQL JDBC-stuurprogramma gebruikt om verbinding te maken met de MySQL-databaseserver. U kunt onderstaande foutmeldingen tegenkomen.
try { Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/dev2qa?useSSL=false","test","666888"); } catch (SQLException ex) { ex.printStackTrace(); System.out.println("SQL State : " + ex.getSQLState()); }
Hieronder staan de foutmeldingen.
INFO: Pre-instantiating singletons in [email protected]: defining beans [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer#0,dataSource,userAccountDao]; root of factory hierarchy com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.
En de SQL-statuscode is 08001 . De reden voor deze fout is dat uw MySQL JDBC jar-bestandsversie niet overeenkomt met de MySQL-databaseserverversie .
1. Verkrijg het versienummer van de MySQL-databaseserver.
- Open Systeemvoorkeuren in macOS.
- Klik op het MySQL-pictogram in het pop-upvenster.
- Dan kun je de MySQL-serverversie krijgen.
2. Download Matched MySQL Server JDBC Version Jar File.
- Je kunt het MySQL JDBC-jar-bestand downloaden van de maven-repository. Als uw MySQL-serverversie 8.0.12 is, moet u JDBC-jars versie 8.0.12 of 8 downloaden.
- Als u maven en pom.xml gebruikt om uw jar-bestanden voor projectafhankelijkheid te beheren, moet u de JDBC-jar-bestandsversie in pom.xml opgeven, zoals hieronder.
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.12</version> </dependency>