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

여름 마스크형 넥 목토시 LM-0350
여름 롱 원피스 반팔 잠옷 면 파자마 임산부 홈웨어
남성용 스포츠 케쥬얼 중목양말 블랙 5켤례
젤 보호막 목주름케어 넥 마스크팩 수분 영양공급
HP 335W USB 3.2 Flash Drives 휴대용 저장장치 USB 메모리 드라이브 128GB
멀티 USB 3.1 카드리더기 9723TC-OTG NEXTU
Linkvu 코일리 투톤 배색 Type-C 데이터 충전 길이조절 케이블 120W USB C to C
신제품 카시오 공학용 FX570CW 계산기 공학계산기
LED 전구 크리스마스 미니 트리 나무 15X40cm 오브제
LED1000구검정선USB지네전구25m리모컨포함
무보링 댐퍼 경첩 4p세트 무타공 인도어 장롱 경첩
환상트리 60cm 책상 인테리어 트리 크리스마스장식
다이아윙스 골프공 3개입 골프 볼세트 스포츠용품
손톱깎이 자동 세트 가정용 깍기세트 발톱관리
오리온 무뚝뚝감자칩 60g 1박스 12개입
에코인 대형 휴대용 수저케이스 수저통 수저보관함

원형 투명 실링 스티커 20mm 1장 50개
칠성상회
브이텍 아기체육관 액티비티 아기 체육관 (V190603)
칠성상회

맨위로↑