목록개발이야기 (512)
준호씨의 블로그
DataGrip에서 MySQL 서버에 접속하려고 하니 "Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually."가 뜨면서 DB 접속이 안되었습니다. 물론 Advanced 탭에서 serverTimezone을 설정해 주면 되긴 합니다. 하지만 해당 DB에 접근하려는 모든 클라이언트에서 이러한 설정을 넣어 준다는 건 비효율적인 일입니다. 게다가 클라이언트에서 timezone을 잘못 설정해 줘서 더 큰 문제가 발생할지도 모를 일이고요. MySQL 서버의 Timezone을 제대로 설정해 주면 이런 문제들은 모두 해결됩니다. 일단 MySQL 서버의 Timezone이 어떻게 설정되어 있는지 확인해 ..
MySQL 버전 확인 방법들에 대해서 알아봅니다. 개인적으로는 서버 접속해서 sql로 확인해 보는 게 가장 좋네요. 여러 다른 방법들을 정리해 보았으니 상황에 따라 사용하실 수 있습니다. mysql 커맨드로 확인하기 mysql 이 설치되어 있는 서버에서 직접 확인하는 방법입니다. mysql --version이나 mysql -V로 확인하면 됩니다. 둘 다 같습니다. $ mysql --version mysql Ver 14.14 Distrib 5.7.29, for Linux (x86_64) using EditLine wrapper $ mysql -V mysql Ver 14.14 Distrib 5.7.29, for Linux (x86_64) using EditLine wrapper 다만 mysql 서버가 별도로..
Oracle DB 서버의 버전이 궁금할 때가 있는데요. 다음의 쿼리로 쉽게 확인 가능합니다. select * from v$version; 여러 가지 정보가 나오는데요. 일반적으로 말하는 메이저 버전은 11g입니다. 숫자 5자리로 나오는 풀 버전은 11.2.0.4.0입니다. 일반적으로 무슨 버전을 쓰냐고 하면 메이저 버전으로 이야기할 것이고요. 상세 버전 확인이 필요한 경우는 5자리로 다 말하게 되겠죠? 보통은 5자리까지 신경 쓸 일은 없지만 어떤 의미가 있는지 한번 찾아 보았습니다. 출처: https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/about-oracle-database-release-numbers.html#GUID-1E2..
지난번에 Java8의 LocalDate와 Period를 이용해서 몇 개월 며칠 남았는지 구하는 코드를 만들어 보았습니다. Java - "x개월 x일 남았습니다" 구하기 보통 D-Day는 종종 구할 일이 있고 예제도 많습니다. 하지만 D-Day를 다르게 표현하는 "x개월 x일 남았습니다"는 예제를 찾기 힘듭니다. 개월 수 차이 구하는 예제도 많던데 이상하게도 몇 개월 며칠은 보이지 않.. junho85.pe.kr 사실 이 코드를 만들게 된 이유는 레거시 코드의 개선작업을 하면서 였는데요. 결국 위의 방법은 사용하지 않고 코드를 새로 만들게 되었습니다. 기존에 몇개월 며칠 남은 것을 구할 때 oracle의 months_between 함수를 이용하고 있었습니다. 뭘 이런 걸 구하는데 sql로 했는지 의아하게 ..
보통 D-Day는 종종 구할 일이 있고 예제도 많습니다. 하지만 D-Day를 다르게 표현하는 "x개월 x일 남았습니다"는 예제를 찾기 힘듭니다. 개월 수 차이 구하는 예제도 많던데 이상하게도 몇 개월 며칠은 보이지 않더군요. 최근에 몇 개월 며칠 남았지 구하는 로직을 만 들일이 있어서 만들면서 정리해 보았습니다. 아참 Java8 이상을 사용하셔야 됩니다. 이전 버전에서도 구하는 방법은 있겠지만 Java8을 쓰면 정말 쉽게 구할 수 있기 때문입니다. 요즘 다들 Java8 이상 사용하고 계시죠? ^^; 정답부터 적어보면 다음과 같습니다. LocalDate theDate = LocalDate.of(2030, 4, 1); Period period = LocalDate.now().until(theDate); Sy..