BOARD

문제 해결

MySQL 5.x 업그레이드 후 발생하는 그누보드 1364 오류 해결 방법

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 22회 작성일 26-09-16 04:20

본문

MySQL 5.x 업그레이드 후 발생하는 그누보드 1364 오류 해결 방법

MySQL 업그레이드 직후 그누보드에서 발생하는 1364 기본값 오류의 원인을 파악하고 설정 파일을 수정해 정상적으로 데이터를 저장하는 방법을 알아봅니다.

1364 오류의 증상과 원인

MySQL 5.0 이상 버전으로 업그레이드한 후 그누보드에서 글쓰기나 회원가입 등 데이터를 삽입할 때 다음과 같은 오류 메시지가 발생할 수 있습니다.

1364 : Field 'mb_memo' doesn't have a default value

원인

MySQL 5.0 이상부터는 엄격한 SQL 모드(STRICT_TRANS_TABLES)가 기본적으로 활성화되는 경우가 많습니다. 이 모드가 켜져 있으면 테이블 설계 시 기본값(Default Value)이 지정되지 않은 필드에 값을 입력하지 않을 경우 데이터베이스가 데이터 삽입을 차단하여 위와 같은 오류가 발생합니다.

my.ini 파일에서 sql-mode 설정 변경 방법

MySQL 설정 파일인 my.ini를 수정하여 엄격한 SQL 모드를 비활성화하는 절차는 다음과 같습니다. 단, 이 모드는 데이터 무결성을 보호하는 기능이므로 비활성화 시 데이터 입력 시 오류 검증이 완화될 수 있음을 유의하십시오.

  1. 설정 변경 전에는 반드시 my.ini 파일을 별도의 위치에 백업해 둡니다.
  2. MySQL 설치 경로에서 my.ini 파일을 찾습니다.
  3. 파일 내에서 sql-mode 항목을 찾습니다.
  4. 해당 줄 앞에 #을 추가하여 주석 처리하거나, 설정을 제거합니다.
    • 변경 예시: # sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
  5. 설정 파일을 저장한 후, 명령 프롬프트(CMD)에서 MySQL 서비스를 재시작합니다.
net stop mysql
net start mysql

MySQL 서비스 재시작 절차

my.ini 설정 파일 수정을 마친 후 변경 사항을 서버에 적용하려면 명령 프롬프트(CMD)를 통해 MySQL 서비스를 재시작해야 합니다.

실행 방법

  1. 설정 파일을 저장한 후 명령 프롬프트(CMD)를 엽니다.
  2. 아래의 명령어를 순서대로 실행하여 서비스를 중지하고 다시 시작합니다.
    net stop mysql
    net start mysql

주의사항 및 복구

  • 설정 변경 전 반드시 my.ini 파일을 별도 위치에 백업해 두어야 합니다.
  • 만약 서비스 재시작 후 MySQL이 정상적으로 시작되지 않는다면, 백업해 둔 원본 파일로 되돌린 뒤 서비스를 다시 시작하십시오. 서비스가 계속 시작되지 않는다면 Windows 이벤트 뷰어(Event Viewer)의 '응용 프로그램' 로그에서 MySQL 관련 오류 메시지를 확인하여 원인을 파악해야 합니다.

my.ini 파일 백업 및 복구 방법

MySQL 설정 파일인 my.ini를 수정하기 전에는 반드시 해당 파일을 별도의 위치에 백업해 두어야 합니다.

복구 절차

설정 변경 후 MySQL 서비스가 정상적으로 시작되지 않는다면 다음 조치를 취합니다.

  1. 백업해 둔 원본 my.ini 파일로 되돌립니다.
  2. MySQL 서비스를 다시 시작하여 원래 상태로 복구합니다.

주의사항

  • 다른 서비스가 특정 SQL 모드를 요구하는 환경인지 사전에 확인이 필요합니다.

적용 후 확인 방법

MySQL 설정 변경 후 오류가 정상적으로 해결되었는지 확인하려면 다음 절차를 진행합니다.

  • 동작 테스트: 그누보드 게시판에서 글을 작성하거나 회원가입을 시도합니다.
  • 결과 판정: 오류 메시지 없이 데이터가 정상적으로 저장되는지 확인합니다.

상황별 판단 가이드

  • 오류 확인: 그누보드 데이터 삽입 시 '1364' 오류 발생 시, MySQL의 STRICT_TRANS_TABLES 모드 활성화 여부를 먼저 확인합니다.
  • 선택 기준: my.ini 수정 전 반드시 원본 파일을 백업합니다. 다른 서비스가 특정 SQL 모드를 요구하는 환경인지 확인이 필요합니다.
  • 다음 행동: sql-mode 항목을 주석 처리(#)하여 비활성화한 뒤, 명령 프롬프트에서 net stop mysql 및 net start mysql을 실행하여 설정을 적용합니다.

실전 FAQ

  • Q. 설정 변경 후 MySQL 서비스가 시작되지 않습니다.
    • 대안: 즉시 백업해 둔 원본 my.ini 파일을 복구하고 서비스를 재시작하여 이전 상태로 되돌립니다. 이후 다른 서비스와의 호환성을 재검토하십시오.
  • Q. my.ini 파일 위치를 찾을 수 없습니다.
    • 예외: MySQL 설치 경로를 확인하십시오. 서비스가 실행 중인 경로와 실제 설정 파일 경로가 다를 수 있으므로, 서비스 관리 도구에서 실행 경로를 먼저 확인하는 것이 좋습니다.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.