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

여성 레깅스 반바지 하이웨스트 슬림핏 쇼츠
제거 푸셔 큐티클 관리 도구 DD-11795 네일 손톱 양면
레츠큐어 부평초 개구리밥 98% 추출물 토너 150ml
금속테용 에어 코패드 코받침 교체 안경자국 실리콘
3단접이식스탠드선풍기 탁상용선풍기 미니선풍기
갤럭시노트20 방탄 강화 액정보호필름 2매
아이패드 미니6 지문방지 액정필름 보호필름 2매
LS전선 CAT.5E UTP 옥외용 케이블 200m (철심/단선/
이케아 GUBBARP 구바르프 손잡이 21mm 화이트 2개입
GB6152 무소음 메탈 스탠드시계 화이트 제조한국
유진 660 BSN 블랙실버 목문 방문손잡이 욕실용
이케아 DIMPA 딤파 캠핑 수납가방 65x22x65cm
업소용 반찬통 Full 스텐밧드 세트 4형 뚜껑포함
이케아 IKEA 365+ 강화유리 머그컵
이지오프 뱅 청크린 변기세정제 병형 2개입
손가락골무 작물 농사 수확 마늘 생강

알파 베이직 젯소 500ml
칠성상회
3M 전자계산기 SJC-830P
바이플러스

맨위로↑