MySQL JDBC driver 다운로드 & 설정
자주 잊어버리니 기록!
- MySQL Connector 8 로 MySQL 5.6, 5.7 에 접속 가능하므로 특별한 이유가 없다면 8 을 사용하는 것이 좋습니다.
- timezone 에러가 날 경우 MySQL JDBC 에러 해결 "The server time zone value 'KST' is unrecognized or represents more than one time zone. " 를 참고하세요.
Download
8.x
$ wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.22.zip
BASH
5.1.x
$ wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.49.zip
BASH
설정
maven
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.22</version>
</dependency>
XML
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.49</version>
</dependency>
XML
gradle
// https://mvnrepository.com/artifact/mysql/mysql-connector-java
compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.22'
GROOVY
JDBC Driver class
com.mysql.cj.jdbc.Driver
CODE
MySQL 5.1 이하
com.mysql.jdbc.Driver
CODE
JDBC URL format
jdbc:mysql://[host][,failoverhost...][:port]/[database][?propertyName1][=propertyValue1][&propertyName2][=propertyValue2]...
CODE
property file
jdbc:mysql://localhost:3306/lesstif?useUnicode=true&characterEncoding=utf8
CODE
XML
& 가 특수 문자이므로 & 로 변경
jdbc:mysql://localhost:3306/lesstif?useUnicode=true&characterEncoding=utf8
CODE
- useUnicode 의 기본 설정은 true 이므로 빼도 된다.
- characterEncoding 의 기본 설정은 'autodetect' 다.
Spring DataSource 용
<bean id="myDS"
class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
<property name="driverClass" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/lesstif?useUnicode=true&characterEncoding=utf8" />
<property name="username" value="userid" />
<property name="password" value="useriduserPwd" />
</bean>
XML
Ref
- command line에서 JDBC download 하기
- 5.1. Driver/Datasource Class Names, URL Syntax and Configuration Properties for Connector/J