[8] Workbench - 세이프 모드 설정 및 해제

2024. 3. 16. 20:22MySQL Workbench

728x90

[ 세이프 모드란? ]

: update와 delete문을 곧바로 실행되지 않도록 막아주는 모드이다.

: update / delete에서 where 절이 없거나 key column외 비교문일때 실행.

: 실제 데이터를 수정 또는 삭제하는 명령문이다 보니 데이터 유실을 막기 위한 모드이다.

★ 보통의 update,delete문 작업 시 safemode는 활성화되어있기에 해제하고 작업을 진행해야 한다.


 

[1] - workbench 설정에서 safemode 컨트롤

 

1-1) 상단 메뉴 이동

: [ Edit ] - [ Preferences ] 클릭

 

1-2) 좌측 메뉴 선택 후 설정 체크박스 확인

: 좌측 SQL Editor 클릭

: 하단 Other에 Safe Updates 체크 (safemode 활성화) / 미체크 (safemode 비활성화)

: 우측 하단 OK버튼 클릭하여 최종 적용

★ 최종 적용 후 workbench 재시작을 해야만 적용됨.

 

1-3) safemode 활성화 후 update 문 실행 결과

오류메시지

error code: 1175. you are using safe update mode and you tried to update a table without a where that uses a key column to disable safe mode, toggle the option in preferences -> sql editor and reconnect.

ㄴ 현재 safemode가 사용중이며, 업데이트문에 where절 없이 실행하려고 했음. sql편집기에서 옵션을 변경 후 실행하세요.


 

[2] - 명령어로 safemode 실행 및 해제

# safemode 실행 명령어
set SQL_SAFE_UPDATES = 1;

# safemode 해제 명령어
set SQL_SAFE_UPDATES = 0;

: workbench에서 바로 위 명령어 입력시 곧바로 적용됨.

: 결과화면

 

: safemode 해제 후 업데이트문 결과 ( 정상 실행 )

 

: safemode 설정 후 업데이트문 결과 ( 오류 메시지 )

 

728x90