mysql 5.7 에서 그누보드5 사용시 날짜형식에 기본값에 대해 질문드려요

mysql 5.7 에서 그누보드5 사용시 날짜형식에 기본값에 대해 질문드려요

QA

mysql 5.7 에서 그누보드5 사용시 날짜형식에 기본값에 대해 질문드려요

답변 4

본문

 

 

PHP7

MYSQL 5.7

아파치 2.4  

조합으로 서버가 세팅되어 있습니다.

설치된 지난주에 올라온 그누보드는 5.2 최신버전이구요.. 

 

아파치 5.4쓸때는 없었던 에러메세지인데

5.7 로 바뀌고 나서는 에러메세지가 생깁니다.

 

회원정보 테이블 g5_member  에서  sql로  alter 로 칼럼 추가하려고 하면  

 

질의 오류:
#1067 - Invalid default value for 'mb_today_login'


같은 에러메세지가 뜹니다.  

날짜형식이 0000-00-00 같이 지정되어 있는 칼럼의 경우에  

위의 메세지가 뜨는거 같은데... 

뭐가 문제인지 모르겠네요..

이런 경우 어떻게 처리하면 좋을지 몰라서  

질문 글 올립니다.

이 질문에 댓글 쓰기 :

답변 4

5.7.13에서 똑같이 g5_member 에 alter table add로 컬럼추가해봤는데 잘 되네요.
insert로 더미데이터 넣어봤는데 mb_today_login에 디폴트인 0000-00-00 00:00:00 잘 들어가 있구요.
테스트는 윈도 데스크탑에서 하긴 했습니다만 아주 다르진 않을듯 한데..
alter table로 컬럼추가 하는데 mb_today_login의 디폴트값이 문제가 된다는게 좀 이상하네요.
아직 5.7 서버에서 테스트가 가능하다면 혹시 모르니 처리하려는 sql을 출력해보세요. 왠지 mb_today_login를 변경하려는게 있었을수도 있겠네요.

일단 로컬에 다시 셋팅해서 설치까지 진행해봤습니다. (wamp3.0.4: apache2.4, php5.6, mysql5.7)
순정그누보드가 아니라 제 커스텀버전 체크할겸 했던거라 순정과 얼마나 차이가 있을진 모르겠습니다만 설치도 잘 되고 phpmyadmin으로 mb_today_login 변경도 해봤습니다만 별 문제는 없었던걸로 보아 역시나 mysql5.7 버전차이보다는 환경쪽의 차이인 모양입니다.
메뉴얼에서는 mysql 5.5에서도 datetime 값에 범위제한이 있는걸 확인했습니다.
ALLOW_INVALID_DATES 문제인줄 알았는데 제 환경을 보니 NO_ZERO_IN_DATE,NO_ZERO_DATE 차이일 수도 있겠습니다.
http://dev.mysql.com/doc/refman/5.5/en/sql-mode.html#sqlmode_no_zero_date

아래는 제 sql mode 셋팅값입니다.
SELECT @@GLOBAL.sql_mode;
SELECT @@SESSION.sql_mode;
STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER

SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'NO_ZERO_IN_DATE',''));

SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'NO_ZERO_DATE',''));

넣을때 sql 형식값을 확인 하시거나. 아니면 mysql5.7 에 맞게끔 변경하셔야 할겁니다

GKTEAM //

일단 설치 후에는 에러 떠서 변경자체가 불가능 합니다.
콘솔로 mysql 접속해서 명령어 내려도 동일하게 에러가 뜨고 진행이 안되더군요.

그렇다면 설치전에 인스톨러를 손질해야 한다는 뜻인데..
물론 개인적으로 수정해서 사용이야 할 수는 있겠습니다만...
그누보드는 mysql 신버전지원안합니다~할거 아니라면 
개발팀 쪽에서 나서야 할 문제 같습니다.


저는 그냥 mysql 5.7 포기하고 구버전 5.5 깔려있는 서버로 돌아가기로 했습니다. =ㅅ=;
이런걸로 용쓰기 싫네요 ;;;

해결 방법 알려드립니다.

SQL_MODE에서 "NO_ZERO_IN_DATE,NO_ZERO_DATE" 값을 제거하시면 됩니다.

 

(5.7부터는 default로 들어가있어요)

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 129,099
© SIRSOFT
현재 페이지 제일 처음으로