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

티셔츠 17수 라운드 반팔 프린트스타 베이직 오버핏 남녀공용
고급스러운 파스텔톤 컬러 아놀드파마 숙녀 메쉬 단목 0015iu
참빗(A-18)
신형 가이드 컷트빗 곡선형 커트 빗 바리깡 셀프이발
롯데 효도라디오 ATX-08 TF재생 SOS경보음 손전등
캐논 유지보수카트리지 MC-G01
오젬 갤럭시탭S7 가로/세로거치 펜홀더 케이스
유파 전기토스터 EK-222W
접이식 좌식 소파 체어 1인 등받이 방석 바닥 의자
이케아 YLLEVAD 윌레바드 미니액자 화이트13x18cm
우드케어 오일스테인 woodcare 10리터
벽데코타일DIY접착식10P 데코타일 셀프인테리어 타일
남성 조깅 헬스 스포츠 반바지 속바지 레깅스 운동복
카프리썬 오렌지 200ml x 20입 (10입x2박스)
(냉장)칠갑 생메밀면 1KGX10EA)
초슬림 만능 틈새 먼지 브러쉬 다용도 청소솔

아이코닉스 띠띠뽀 말하는 관제센터 놀이세트 (729182)
칠성상회
하이브리드 와이퍼 윈도브러쉬 국내 전차종 350-650mm
칠성상회

맨위로↑