코딩마을방범대

[MySQL] Read Only로 설정되어 CRUD가 불가능할 때 본문

💡 백엔드/MySQL

[MySQL] Read Only로 설정되어 CRUD가 불가능할 때

신짱구 5세 2023. 7. 11. 14:32

 

 

dump로 백업 후 프로젝트 실행 시 save할 때 아래와 같은 오류가 발생하여 검색해보았다.

 

Caused by: org.hibernate.HibernateException: The database returned no natively generated identity value

 

 

PK와 Auth Increment 문제라하여 테스트 겸 MySQL 워크벤치에서 데이터를 삽입한 후 삭제를 진행해보려하였으나 

이번엔 아래와 같은 오류가 발생했다!!

 

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.

 

 

원래 워크벤치에서 테이블 데이터 조회 시 아래와 같이 Edit 툴들이 활성화 되어 있는데

수동으로 지우려 찾아보니 Edit 툴이 아예 보이지도 않았다.

정상적인 테이블 조회 시
오류가 발생했을 때의 툴 목록

 

 

오른쪽 아래를 보면 Read Only로 설정되어 있는 것을 확인할 수 있다.

 

 

 

해결 방법으로는 Safe 모드를 해제하는 방법이 있다고 한다.

 

 

 

 


 

 

 

 

 

Safe 모드 해제하기

1. Edit - Preferences... 클릭

 

2. SQL Editor - Safe Updates 체크 해제

 

3. 테이블 옵션에서 필드 PK 설정해주기 (PK 필드가 없을 경우 에러발생!)

 

 

 

 


 

 

 

 

 

💡 TIPS!

 

MySQL 테이블 설정 확인하는 방법 (터미널)

워크벤치를 이용하지 않고 터미널에서 확인하고 싶을 경우 아래 명령어를 이용!

mysql> use [스키마명]
mysql> desc [테이블명]

 

 

 

 

 

 

 


참고사이트

Workbench 행 삭제 (Read Only 상태 바꾸기)

 

 

 

 

 

SMALL

'💡 백엔드 > MySQL' 카테고리의 다른 글

[MySQL] Mysql Dump를 이용한 백업, 복원 방법  (0) 2023.07.11