컴퓨터 / 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

4컬러 민소매 블라우스 슬리브리스 여성나시 보들
쁘띠크로와 데일리패션향수_퍼스트러브(라일락향)
깔끔하게 가방속정리 백인백 정리파우치 유용한 이너백 속가방
4컬러 오리지널 롱 남성장화 방수장화 남성용 레인부츠 장마철 패션장화
갤럭시 A8 2018 사생활 액정보호필름1매
크리스탈프로링크캡슐케이스 갤럭시Z플립5 SM-F731N
갤럭시퀀텀3 멜로우 카드 젤리케이스 M536
갤럭시온7 2016 SPR 9H 강화유리 글라스 1매 G610
이케아 GLASIG글라시그 미니양초홀더 유리5x5cm 5개입
이케아 YLLEVAD 윌레바드 미니액자 화이트13x18cm
LED 전구 T 벌브 램프 40W 전구색 E26 비츠온
NEW 페인트 부자재세트 DIY 페인트도구 셀프페인팅 페인트용품
서울우유 멸균우유 1L x 10팩입
키친플라워 인덕션 냄비 멀티팟 국수 라면 냄비 18CM
고휘도 안전 반사 스티커 야간 킥보드 자전거 헬멧
피싱 이동식 로드백 거치대 태클박스 가방

부자되는집 내추럴 소프트 물티슈 캡형 100매_완구 미
칠성상회
네모랑고(NEMORANGGO) 냉온풍 튜브_2미터
칠성상회

맨위로↑