컴퓨터 / Computer

MySQL/MariaDB 5.1 에서 5.5 업그레이드시 strict mode 해제 방법

0_fivEmSUN_cafc0046fceae53820e6e11ed19a3a0d3034ec3c.jpg 


MySQL이나 MariaDB의 경우 5.1에서 5.5로 이전할때 주의할 사항이 있다. 5.1에서는 별 문제 없었으나 5.5에서는 STRICT MODE가 기본으로 설정되어 있다.

 

DB 프로그래밍 할때 모든 변수를 매칭시키도록 해 놨으면 괜찮은데 예전에 짠 프로그램의 경우 일부 항목은 입력을 하지 않도록 해 놨을 것이다. 그런 경우에는 STRICT MODE를 해제해야 할 것이다.

 

 

1. Mode 확인

 

mysql 콘솔로 가서 아래와 같이 입력을 해 본다.

 

 SELECT @@global.sql_mode;

 

이때 결과값이 아래와 같다면 STRICT MODE이다.

 

STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION 

 

2. 변경하기.

 

mysql 콘솔에서 아래와 같이 입력한다.

 

 SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION';

 SET SESSION sql_mode = 'NO_ENGINE_SUBSTITUTION';

 

 

3. my.cnf 에서 저장하기 

 

그런데 2와 같이 하면 mysqld 를 다시 실행할때마다 원래대로 변경될 것이다.

따라서 my.cnf (혹은 my.cnf.d/server.cnf 에서. 주로 server.cnf를 바꿔야 할 것이다.) 에 아래 항목을 추가한다.

 

 

 [mysqld]

 sql_mode="NO_ENGINE_SUBSTITUTION"

 

경우에 따라서는 아래와 같이 추가가 된 경우도 있을 것이다. 이때 STRICT로 시작하는 부분을 없애거나 저 줄을 주석처리하고 새 줄에서 위 라인을 추가한다.

 

 [mysqld]

 sql-mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"

 

 

이제 1로 가서 설정 유무를 확인해 보고 프로그램 정상 동작 여부를 확인해 보라.

 

Comments

남성 아웃도어 바디백 유행 데일리 인기 베이지 가방
여성 통굽 편한 여름 슬리퍼 여름 실내화 10cm 3컬러
베르 화장품파우치 3color 여행용파우치 여행용 가방
와이어 없는 빅사이즈 엄마브라
이케아 PRODUKT 프로둑트 우유거품기 전동크리머 블랙
캥거 소음 측정기 층간소음 데시벨 소음계 KGA-350
K71GH 가상 7.1채널 RGB 게이밍 헤드셋 (반품불가)
대원 만능 스텐 믹서기 DWM-3500 십자날
접이식 나무탁자 쇼파옆 미니테이블 정원 마당 꾸미기
무타공 아트월 액자걸이 대리석 틈새 후크 셋쿡
루비 욕실코너선반3단
코텍 싱크선반 유압브라켓(소K9045) 쇼바 상부장 고정
정글모-망사
은플 락앤락 밥용기 냉동밥용기 3단 전자렌지밥용기
이케아 KUPONG 쿠퐁 탁상시계 알람시계 그린 4x6cm
키친아트 라팔 칸칸 완전분리 밀폐 도시락 750G

이케아 FRAKTA 프락타 카트용트렁크 73x35x30cm
바이플러스
모닝글로리 초등 1-2 14칸노트 초등학교 공책 쓰기
칠성상회

맨위로↑