What is MySQL Connector J?

Connector/J 5.1 is a Type 4 pure Java JDBC driver, which conforms to the JDBC 3.0, 4.0, 4.1, and 4.2 specifications. It provides compatibility with all the functionality of MySQL, including 5.6, 5.7 and 8.0. Connector/J 5.1 provides ease of development features, including auto-registration with the Driver Manager, standardized validity checks, categorized SQLExceptions, support for large update counts, support for local and offset date-time variants from the java.time package, support for JDBC-4.x XML processing, support for per connection client information, and support for the NCHAR, NVARCHAR and NCLOB data types.

  • Connector/J 8.0 is a Type 4 pure Java JDBC 4.2 driver for the Java 8 platform. It provides compatibility with all the functionality of MySQL 5.6, 5.7, and 8.0. See MySQL Connector/J 8.0 Developer Guide for details.

    MySQL Connector/J 8.0 is highly recommended for use with MySQL Server 8.0, 5.7, and 5.6. Please upgrade to MySQL Connector/J 8.0.

  • The following table summarizes the Connector/J versions available, along with the compatibility information for different versions of JDBC, MySQL Server, and Java, as well as the support status for each of the Connector/J versions:

    Table 2.1 Summary of Connector/J Versions

    Connector/J versionJDBC versionMySQL Server versionJRE RequiredJDK Required for CompilationStatus5.13.0, 4.0, 4.1, 4.25.61, 5.71, 8.01JRE 5 or higher1JDK 5.0 AND JDK 8.0 or higher2, 3General availability8.04.25.6, 5.7, 8.0JRE 8 or higherJDK 8.0 or higher2General availability. Recommended version.

    • 1 JRE 8 or higher is required for Connector/J 5.1 to connect to MySQL 5.6, 5.7, and 8.0 with SSL/TLS when using some cipher suites.

    • 2 A customized JSSE provider might be required to use some later TLS versions and cipher suites when connecting to MySQL servers. For example, because Oracle's Java 8 is shipped with a JSSE implementation that only supports TLSv1.2 and lower, you need a customized JSSE implementation to use TLSv1.3 on Oracle's Java 8 platform.

    • 3 If you are building Connector/J 5.1 from source code using the source distribution, you must have both JDK 8.0 or higher AND JDK 5.0 installed. It is also good to have JRE 6 for compiling Connector/J 5.1. See Section 3.4, “Installing from Source” for details.

    This guide also covers earlier versions of Connector/J, with specific notes given where a setting applies to a specific version.

    MySQL provides connectivity for client applications developed in the Java programming language with MySQL Connector/J, a driver that implements the Java Database Connectivity (JDBC) API and also MySQL X DevAPI.

    MySQL Connector/J 8.0 is a JDBC Type 4 driver that is compatible with the JDBC 4.2 specification. The Type 4 designation means that the driver is a pure Java implementation of the MySQL protocol and does not rely on the MySQL client libraries.

    The driver also contains an implementation of MySQL X DevAPI, an application programming interface for working with MySQL as a Document Store through CRUD-based, NoSQL operations.

    For more information, please visit the official MySQL Connector/J documentation.

    Licensing

    Please refer to the README and LICENSE files, available in this repository, and the Legal Notices in the MySQL Connector/J documentation for further details.

    Getting the Latest Release

    MySQL Connector/J is free for usage under the terms of the specified licensing and it runs on any operating system that is able to run a Java Virtual Machine.

    Download and Install

    MySQL Connector/J can be installed from pre-compiled packages that can be downloaded from the MySQL Connector/J download page. Installing MySQL Connector/J only requires obtaining the corresponding JAR file from the downloaded bundle or installer and including it in the application's CLASSPATH.

    According to how you use MySQL Connector/J, you may also need to install the following third-party libraries on your system for it to work:

    • Protocol Buffers (protobuf-java) is required for using X DevAPI
    • Oracle Cloud Infrastructure SDK for Java (oci-java-sdk) is required to support OCI AIM authentication
    • Simple Logging Facade API (slf4j-api) is required for using the logging capabilities provided by the default implementation of org.slf4j.Logger.Slf4JLogger by MySQL Connector/J

    As a Maven Dependency

    Alternatively, MySQL Connector/J can be obtained automatically via Maven's dependency management by adding the following configuration in the application's Project Object Model (POM) file:

    <dependency>
      <groupId>com.mysql</groupId>
      <artifactId>mysql-connector-j</artifactId>
      <version>8.0.32</version>
    </dependency>

    MySQL Connector/J's own Project Object Model (POM) file specifies a transitive dependency to Protocol Buffers (protobuf-java) since it is required for using X DevAPI. However, if you do not use the X DevAPI features, you may also want to add a dependency exclusion to avoid linking the unneeded sub-library. For example:

    <dependency>
      <groupId>com.mysql</groupId>
      <artifactId>mysql-connector-j</artifactId>
      <version>8.0.32</version>
      <exclusions>
        <exclusion>
          <groupId>com.google.protobuf</groupId>
          <artifactId>protobuf-java</artifactId>
        </exclusion>
      </exclusions> 
    </dependency>

    Build From Source

    This driver can also be complied and installed from the source available in this repository. Please refer to the MySQL Connector/J documentation for detailed instructions on how to do it.

    GitHub Repository

    This repository contains the MySQL Connector/J source code as per the latest release. No changes are made in this repository between releases.

    Contributing

    There are a few ways to contribute to the MySQL Connector/J code. Please refer to the contributing guidelines for additional information.

    Where is MySQL Connector Java?

    java' is stored in E:\ and 'MySQL-connector-java-5.1. 31-bin. jar' is stored in "C:\Program Files\MySQL\MySQL Connector J\". Note : The class path is the path that the Java Runtime Environment (JRE) searches for classes and other resource files.

    Why do we need MySQL Connector jar?

    Why do I need a MySQL connector and how does it work?? It's a Java application that needs to connect to a MySQL database. The connector is a library that enables this. You can easily Google to get an answer to this, but the MySQL connector JAR contains all the logic/code which allows Java to talk to MySQL.

    What is JDBC and what is its purpose?

    Java™ database connectivity (JDBC) is the JavaSoft specification of a standard application programming interface (API) that allows Java programs to access database management systems. The JDBC API consists of a set of interfaces and classes written in the Java programming language.

    What is difference between MySQL and MySQL Connector?

    mysqlclient is a forked version of MySQLdb with python3. 3+ support, and mysql connector is official module from mysql.