2018. 3. 3. 04:03ㆍ99. 정리전 - IT/15. SQL 따라잡기
내가 하도 답답해서...
박스 서버에 새로산 SSD에 윈도우10-RS3로 새로 깔고 마이스큐엘도 최신5.7으로 받아 깔고
맥북에서 윈도10 마이스큐엘에 접속하여 개발 하려고 하는데
맥북에 설치된 DB Visualizer 에서 부터 접속 부터 안되서 이것 저것 하다가 그냥 정리겸 포스팅 함
일전에 한번 해봤는데 까먹어서 다시 삽질하며 밤이 깊어지다.
윈도우10에 MySQL5.7(2018년3월 현재 최신버전)을 깔고 깔면 기본적으로 제공해 주는 워크벤치에서 이하와 같이 마이스큐엘에서 접속권한 설정하고
(파랭이:기본적으로 셋팅되어 있음 / 빨갱이:내가 추가함)
이하와 같이 추가한 접속가능 롤에 모든 권한도 주고
이하와 같이 쿼리를 날려 설정된걸 확인하고
SELECT HOST, USER, AUTHENTICATION_STRING FROM MYSQL.USER WHERE USER='your_user_name'; |
DB Visualizer 로 접속했더니 접속이 안된다.
참고로 마이스큐엘이 있는 박스서버는 DonzBox.com 도메인이 연결되어 있고, 고로 IP공유기에 DMZ 설정되어 있으며, DB Visualizer로 접속하는 맥북은 같은 IP공유기의 WIFi를 사용 중임. |
애러 현상
접속을 누르면 이하와 같은 애러
An error occurred while establishing the connection: Long Message: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. Details: Type: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException SQL State: 08S01 |
원인 및 해결방법
MySQL5.7 은 윈도우 시스템에 인스톨 될때 방화벽 설정이 (도메인, 개인) 두개만 체크가 된다. 이하와 같이 (공용)도 체크해 준다.
방화벽은 서버를 재기동 할 필요 없음. 다시 접속해 보면 접속이 잘됨.
이렇게 하면 DB 툴에서 서버의 MySQL로 접속은 성공이다.
애러현상
다음 문제는 개발 환경에서 맥북의 로컬 스프링부트 환경의 프레임웍 기동시 DB 애러 발생
Caused by: com.mysql.cj.core.exceptions.InvalidConnectionAttributeException: The server time zone value '´ëÇѹα¹ Ç¥ÁؽÃ' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support. |
글자까지 깨져 나와서 무슨 말인지 모르겠지만, 타임존이 어쩌구 저쩌구 하는듯 하여 찾아보았다.
원인 및 해결방법
마이스큐엘 5.7은 별도의 타임존 설정을 수동으로 해줘야 하며, 그래서 DB의 타임존과 서버시간이 차이가 나면 위와 같은 애러를 뱉는 모양임.
어쨌든 저 문제를 해결하려면
리눅스용 마이스큐엘 구글링은 방법이 많이 나와있는데 윈도는 문서 찾기가 힘듬. 스테거블로우에서 조각조각 정보를 모아서 시도함
1. 이하의 링크로 드가서 자기거를 다운 받아둔다. (나는 https://downloads.mysql.com/general/timezone_2018c_posix_sql.zip 이거 받음) https://dev.mysql.com/downloads/timezones.html 2. 받은거 압축풀면 sql 파일인데 알맹이 내용 전부 복사해서 DB툴로 자신의 DB에 연결한 후 붙여넣기 하고 mysql 스키마에 47,462줄 정도 되는 INSERT문을 실행한다. 3. 이하의 쿼리로 잘 드갔는지 확인 select b.name, a.time_zone_id from mysql.time_zone a, mysql.time_zone_name b where a.time_zone_id = b.time_zone_id and b.name like '%Seoul'; 4. 서버에 마이스큐엘을 디폴트 디렉토리에 깔았다면 이하의 파일 마지막에 추가해준다. C:\ProgramData\MySQL\MySQL Server 5.7\my.ini default-time-zone=Asia/Seoul |
5. 마이스퀠 서버 재기동 후 이하의 쿼리 실행
SELECT @@global.time_zone, @@session.time_zone;
결과가 상기와 같이 나오면 스프링부트 개발에서도 마이스퀠에 붙는 거임
3월 03, 2018 3:21:33 오전 org.apache.tomcat.util.digester.SetPropertiesRule begin 경고: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.j2ee.server:homepage-helper' did not find a matching property. 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Server version: Apache Tomcat/9.0.0.M26 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Server built: Aug 2 2017 20:29:05 UTC 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Server number: 9.0.0.0 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: OS Name: Mac OS X 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: OS Version: 10.13.3 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Architecture: x86_64 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Java Home: /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: JVM Version: 1.8.0_131-b11 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: JVM Vendor: Oracle Corporation 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: CATALINA_BASE: /Users/donz/Desktop/My_Data/project_e/workspace_bd/workspace_homepage/.metadata/.plugins/org.eclipse.wst.server.core/tmp0 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: CATALINA_HOME: /Users/donz/Desktop/My_Data/project_e/tomcat/apache-tomcat-9.0.0.M26 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Command line argument: -agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:49824 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Command line argument: -Dcatalina.base=/Users/donz/Desktop/My_Data/project_e/workspace_bd/workspace_homepage/.metadata/.plugins/org.eclipse.wst.server.core/tmp0 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Command line argument: -Dcatalina.home=/Users/donz/Desktop/My_Data/project_e/tomcat/apache-tomcat-9.0.0.M26 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Command line argument: -Dwtp.deploy=/Users/donz/Desktop/My_Data/project_e/workspace_bd/workspace_homepage/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Command line argument: -Djava.endorsed.dirs=/Users/donz/Desktop/My_Data/project_e/tomcat/apache-tomcat-9.0.0.M26/endorsed 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Command line argument: -Dspring.profiles.active=localMac 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Command line argument: -Djavaagent=/Users/donz/.gradle/caches/modules-2/files-2.1/org.springframework/springloaded/1.2.8.RELEASE/496703c6ed678701ed0447ef6113f9ec5eb6a7e2/springloaded-1.2.8.RELEASE-sources.jar 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Command line argument: -Xverify:none 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.VersionLoggerListener log 정보: Command line argument: -Dfile.encoding=UTF-8 3월 03, 2018 3:21:33 오전 org.apache.catalina.core.AprLifecycleListener lifecycleEvent 정보: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/Users/donz/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.] 3월 03, 2018 3:21:33 오전 org.apache.coyote.AbstractProtocol init 정보: Initializing ProtocolHandler ["http-nio-8080"] 3월 03, 2018 3:21:33 오전 org.apache.tomcat.util.net.NioSelectorPool getSharedSelector 정보: Using a shared selector for servlet write/read 3월 03, 2018 3:21:33 오전 org.apache.coyote.AbstractProtocol init 정보: Initializing ProtocolHandler ["https-jsse-nio-8444"] 3월 03, 2018 3:21:33 오전 org.apache.tomcat.util.net.NioSelectorPool getSharedSelector 정보: Using a shared selector for servlet write/read 3월 03, 2018 3:21:33 오전 org.apache.coyote.AbstractProtocol init 정보: Initializing ProtocolHandler ["ajp-nio-8009"] 3월 03, 2018 3:21:33 오전 org.apache.tomcat.util.net.NioSelectorPool getSharedSelector 정보: Using a shared selector for servlet write/read 3월 03, 2018 3:21:33 오전 org.apache.catalina.startup.Catalina load 정보: Initialization processed in 718 ms 3월 03, 2018 3:21:33 오전 org.apache.catalina.core.StandardService startInternal 정보: Starting service [Catalina] 3월 03, 2018 3:21:33 오전 org.apache.catalina.core.StandardEngine startInternal 정보: Starting Servlet Engine: Apache Tomcat/9.0.0.M26 3월 03, 2018 3:21:39 오전 org.apache.jasper.servlet.TldScanner scanJars 정보: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. 3월 03, 2018 3:21:39 오전 org.apache.catalina.core.ApplicationContext log 정보: 2 Spring WebApplicationInitializers detected on classpath 03:21:39.438 [main] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Adding PropertySource 'servletConfigInitParams' with lowest search precedence 03:21:39.454 [main] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Replacing PropertySource 'servletContextInitParams' with 'servletContextInitParams' .,:;;;;;:,.` `;;;:::,,,,::::::::::::,:::::;;;. `';:,:,,,,,,,,,,,,,,,,:::::::::::::::::::::::::::;;', ';:,,,,,,,,,,,,:;;;;;;:.```````````.:;;;;;;:::::::::::::;'' ;;:,,,,,,,,:;;;``.`````````````````````..............,,.:;;:::::::::;'+ ':,,,,,,,,;;;`..````````````````````````````...............,,.;;;::::::::'+. `;::,,,,,:;;`.```````````````````````````````````````..................:,;;:::::::'+: '::,,,,,:;;`.`````````````````````````````````````````..................,,,,,;:::::::++` ;:,,,,,:;;..``````````````````````````````````````````````..................,,,,,,:,;::::::'#, :;,,,,,,;;`.````````````````````````````````````````````````...................,,,,,,,:;:::::::@@ '::,,,,;;..`````````````````````````````````````````````````........```` ``....,,,,,,,,,,:;::::::+@ '::,,,,;;.````````````````````````````````:################..........`` `..,,,,,,,,,:;:;:::::'@ '::,,,,;;.```````````````````````######################################' ..,,,,,,,::;,;:::::+@ '::,,,,;;.``````````````.@@@@@@@##########;`````````########################@@@@@@@ `.,,,,,,:::;,;:::::#@ :;:,,::;;.````````+@@@@@@@@@@@@##,``````````````````.##########################@@@@@@@@@@@@@:,,::::;:::::::@@ ;:::::;;...````@@@@@@@: `````````````````````.....###########################@@@@@ `@@@@@:::::;;:;::;:#, '::::::;.,..````@;@@@@@@@@@@``````````````````........#######################+ .@@@@@@@@@@:::::::;:;;;;+# ;:::::;;,...````@# @@@@@#######````````............##############........#######@@: `@@@@::::::'::;;;;;#; '::::::;.,...````@@ `##############...........+++;........,###########.` `@@@':::::::;;:;;;;+# ;:::::;;,.....```@@ `````````##########++++++;::+++++++#######..........` .@@@::::::::'::;;;;;#` .;:::::;,,.....`` @@ @ ```````.............:+++++++++++++....................` `,@@@:::::::::;;:;;;;#+ ;;:::::;.,.....`` @@ @@@: `````.....................++++............................`..,#@@@:::::::::;;:;;;;## '::::::;,......`` @@ '@#######,......................++++......................,,,,,,,,,,@@@@:::::::::';:;;;;+# '::::::;,.......` @@ ##################............++++.....................,,,,,,,,,,,@@@@:::::::::';:;;;;'# ';:::::;,.......` @@ ###############............+++:....................,,,,,,,,,,,,@@@@:::::::::';:;;;;'# ';:::::;,.......` @@ ``..........................+++....................,,,,,,,,,,,,:@@@#:::::::::';:;;;;'# ';:::::;,,.......`#@ `...........................+++...................,,,,,,,,,,,,::@@@::::::::::';:;;;;++ ,':::::;,:........,@` ``...........................+++.................,,,,,,,,,,,,,:::@@@::::::::::';:;;;;++ '::::::::.........@@ ```............................+++................,,,,,,,,,,,,::::;@@@:::::::::';;;;;;;+, +':::::;,,........@@.`````..............................+++..............,,,,,,,,,,,,,::::@@@@@:::::::::';:;;;;'+ ,'::::::,:,........@@@@@@...............................###............,,,,,,,,,,,,,;@@@@@@@@@@::::::::;;;;;;;;++ +':::::;,,,,,........@@@@@@@@,.........................###.........,,,,,,,,,,,#####@@@@@@:::::::::::::';:;;;;'+ .'::::::;:,,,,,,..........@@@@#####....................###.......,,,,,,,+#########@#:::::::::::::::::+;;;;;;;++ ++::::::::,,,,,,,,............@#########;.............###...,,,,,,###########::::::::::::::::::::::'';:;;;;'+ +'::::::,;,,,,,,,,,,,,............:###########.......###,,,###########+,,,::::::::::::::::::::::::';:;;;;'+` +;::::::,;,,,,,,,,,,,,,,,,,,,,,,.......'########################,,,,,,,:::::::::::::::::::::::::';:;;;;'+, `#;:::::::;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,'############,,,,,,,,,,::::::::::::::::::::::::::;';:';'''+; `#;:::::::;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;',,,,,,,,,,,:::::::::::::::::::::::::::::+';:'''''+; ##::::::::;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::::::::::::::::::::::::::::::::+';:'''''''` #@:::::::;:;::::::::::::::,,,,,,,,,,,,,:::::::::::::::::::::::::::::::::::::::::::::+;;;''''''' +@;:::::::;;':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;+;;:'''''''' @@;:::::::;:':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::+';;;'''''''' @#';;;;;;;::;;':::::::::::::::::::::::::::::::::::::::::::::::+'';:;''''''''' '##;;;;;;;;::;;;':::::::::::::::::::::::::::::::::::::::++';;:;''''''';'' ###;;;;;;;;;;;:::;;;;'''+++'';;;;'++++''';;;;::;'''''''''''''` ;##+;;;;;;;;;;;;;;;:::::::::::::::::;;''''''''''''';''' ,#++++';;;;;;;;;;;;;;;'''''''''''''': ,'++++++++++++++++'':`
:@@@@@@@@@@@;:: ::@@@@@@@@@@@@@::::@@@@:: :@@@:::@@@@@@@@@@@@@@@@::@@@@@@@@@@@@@@:: :::@@@@@@@@@@@@::::@@@::: ::@@@@: :@@@@@@@@@@@@@::::::@@@@@@@@@@@@@@@+::@@@@@:: :@@@:::@@@@@@@@@@@@@@@@::@@@@@@@@@@@@@@@::+@@@@@@@@@@@@@@@:::@@@::: ::@@@@: :@@@@:::::::@@@@::::@@@::::::::'@@@+::@@@@@@@:: :@@@::::::::::::@@@@@@:::@@@:::::::::@@@::+@@@@::::::::@@@:::@@@@:::..::@@@@@: :@@@@:: ::@@@:::@@@:`` :'@@@+::@@@@;@@@::::@@@::: ::@@@@@@::: ::@@@+++++++++@@@::+@@@@: :@@@:::::@@@@@++@@@@@::: :@@@@:: ::@@@:::@@@:`` :'@@@+::@@@@:@@@@:::@@@::: ::@@@@@@:: ::@@@@@@@@@@@@@@:::+@@@@: :@@@::::::@@@@@@@@@:::: :@@@@:: ::@@@:::@@@:`` :'@@@+::@@@@:::@@@@@@@@::: ::@@@@@@:: ::@@@#########@@@::+@@@@: :@@@:::::@@@@@##@@@@@::, :@@@@:::::::::@@@:::@@@::::::::'@@@+::@@@@: ::@@@@@@@::::@@@@@::::::::::::@@@:::::::::@@@::+@@@@::::::::@@@:::@@@@:::,,::@@@@@: :@@@@:::::::::@@@:::@@@::::::::'@@@+::@@@@: ::@@@@@@:::@@@@@:::::::::::::@@@:::::::::@@@::+@@@@::::::::@@@:::@@@:::, ,::@@@@: :@@@@@@@@@@@@@@@;:::@@@@@@@@@@@@@@@:::@@@@: `::;@@@:::@@@@@@@@@@@@@@@@::@@@@@@@@@@@@@@@:::@@@@@@@@@@@@@@@:::@@@::: ::@@@@: :@@@@@@@@@@@@@@;:::::@@@@@@@@@@@@@::::@@@@: :::@@@:::@@@@@@@@@@@@@@@@::@@@@@@@@@@@@@@:: :::@@@@@@@@@@@@::::@@@::: ::@@@@:
Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary. [2018-03-03 03:21:47.181|http-nio-8080-exec-1|DEBUG|jdbc.sqlonly:223] sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2) 5. /* com.donzbox.mapper.UserList : STAFF 스탭정보 (로그인세션정보용) */ SELECT [2018-03-03 03:21:47.221|http-nio-8080-exec-1|INFO |jdbc.resultsettable:610] |---------| |staff_id | |---------| |---------| |
그럼 행운들 빌어~