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

지앤제이 하복 브라운 양쪽 두줄 주름 치마 (강일고
3W 엔리치 풋 트리트먼트 100ml 수분충전 청결유지
쿨티 남성 V넥 여름 무지 아이스 반팔 티셔츠 KK855
국산 정장양말 무압박 다이아 중목 남자 10켤레
(SM)미용이발기 바버101 교체날
오젬 갤럭시탭S8 프로텍션 핸드스트랩 케이스
타이탄풀커버필름2매 갤럭시S23울트라 SM-S918N
갤럭시A15 A156L 카드수납 스트랩 목걸이 케이스
이케아 GLASIG글라시그 미니양초홀더 유리5x5cm 5개입
인테리어 다용도 세탁기 덮개 건조기 커버 논슬립커버
다올 아이언 이동식 행거 500 화이트 매장용 철재행거
오공 마루커버시트(화이트) WT90 장판보수 테잎형
LX-291 타이머 쿠킹 요리 주방 조리타이머
요거트볼 아이크스림 그릇 아포가토 용기 컵 디저트볼
밀크소다 암바사 345ml 24캔
코카콜라 업소용 500ml 24PET

3M 1181 동테이프 동박테이프 25mm x 1M
바이플러스
바르네 풀테이프 리필 BGT-0180R 12개 MB O
칠성상회

맨위로↑