사용자 도구

사이트 도구


database:mysql:jdbc

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
database:mysql:jdbc [2017/12/18 16:40]
kwon37xi
database:mysql:jdbc [2020/03/05 10:48]
kwon37xi
줄 34: 줄 34:
   * 이를 서버 커서 방식으로 바꾸려면 JDBC URL에 ''​useCursorFetch=true?​defaultFetchSize=100''​ 형태로 옵션을 추가해야 한다.   * 이를 서버 커서 방식으로 바꾸려면 JDBC URL에 ''​useCursorFetch=true?​defaultFetchSize=100''​ 형태로 옵션을 추가해야 한다.
     * Server Cursor를 사용하면 자동으로 ''​useServerPrepStmts=true''​ 상태가 된다.     * Server Cursor를 사용하면 자동으로 ''​useServerPrepStmts=true''​ 상태가 된다.
 +
 +===== useSSL=false / sslMode=DISABLED =====
 +  * [[https://​dev.mysql.com/​doc/​connector-j/​8.0/​en/​connector-j-reference-configuration-properties.html|MySQL :: MySQL Connector/J 8.0 Developer Guide :: 6.3 Configuration Properties]]
 +  * mysql JDBC Driver 는 ''​useSSL=true''​ 가 기본값이며,​ 이때 상황에 따라 SSL을 사용했다 안했다가 한다.
 +  * 이는 개발자가 모르는 사이에 SSL 인증서 만료등이 발생했을 때 문제 소지가 있다.
 +  * 8.0 드라이버 부터는 ''​sslMode''​프라퍼티로 변경된다.
 +  * ''​useSSL=false|false'',​ ''​sslMode=DISABLED''​ 로 항상 원하는 상태를 명시할것.
 +
  
 ==== Datetime 0 ==== ==== Datetime 0 ====
줄 90: 줄 98:
   * ''​logger=com.mysql.jdbc.log.Slf4JLogger''​ : 로거 지정   * ''​logger=com.mysql.jdbc.log.Slf4JLogger''​ : 로거 지정
   * ''​profileSQL=true''​이면 로그로 모든 쿼리를 남기고 성능 지표도 함께 표시한다.   * ''​profileSQL=true''​이면 로그로 모든 쿼리를 남기고 성능 지표도 함께 표시한다.
 +
 +===== allowMultiQueries =====
 +  * MySQL JDBC는 기본적으로 하나의 SQL 실행 요청에 여러 SQL을 실행하는 것을 금지하고 있다.(세미콜론(;​)으로 여러 SQL 전송 불가)
 +  * 실서비스에서는 사용하지 말고, 테스트시에 필요한 경우 ''​allowMultiQueries''​로 허용 가능하다.
 +  * ''​allowMultiQueries=true''​
  
 ===== Interceptor ===== ===== Interceptor =====
database/mysql/jdbc.txt · 마지막으로 수정됨: 2020/03/05 10:48 저자 kwon37xi