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

티뷰크 SS 정비복 TB-730
여자 여름 박스핏 오버핏 프린팅 티셔츠 롱티 반팔티
빅사이즈 쉬폰 헤어슈슈 얼굴작아보이는 여름 곱창끈
토끼 레터링 프린팅 반팔 박스티셔츠 라운드넥 홈웨어
커널형 이어폰 블랙 무통증 유선이어폰
오쿠 두유 제조기 죽 이유식 제조기 두유기 600ml
뉴신형 NX6000W 차량용 테블릿 CD슬롯 휴대폰 거치대
삼성 노트북9 메탈 13 노트북 외부보호필름세트
칸막이 파티션 설치 고정 브라켓 받침대 L자 DD-11939
이케아 GUBBARP 구바르프 손잡이 21mm 화이트 2개입
이케아 GLASIG글라시그 미니양초홀더 유리5x5cm 5개입
접이식선반 5단 원터치 폴딩 철제수납장 다용도선반 베란다 서재 거실 욕실 주방수납
국산일체형트랩 세면대 배수관 부속품 폽업 트랩
코카콜라 제로 업소용 1.25L 12PET
아리랑 옛날십리사탕 570g X 10개입 1박스
샘표 진간장 덕용 14L 대용량 1개

가정용 코팅기 KOLAMI-324 4롤러 A3 무소음 무기포
칠성상회
물고기 애벌레 원목 낚시놀이 장난감
칠성상회

맨위로↑