MySQL Workbench 설치 및 사용

스윗포테이토·2022년 11월 3일
4

설치

최신 버전은 M1 맥에서 호환이 제대로 되지 않는 문제가 있었다. 따라서 처음에는 8.0.25버전을 설치했었는데, EER Diagram을 생성하던 중 문제가 생겨서 혹시 버전 문제일까 싶어서 8.0.29버전으로 재설치하였다. 미리 말해두자면 workbench 버전 문제는 아니었으므로 두 버전 모두 문제 없이 사용이 가능한 것 같다. 사용 중인 MacOS은 12.4버전이다.

workbench 다운로드 링크

데이터베이스 연결

현재 Docker를 이용한 개발을 하고 있으며, 사용중인 이미지는 MariaDB:10.5이다.
도커를 사용해서 링크를 띄우고 있지만, 별 다른 설정이 없이 바로 연결이 가능했다.

1. setup

메뉴의 [Database] - [Manage Connections...]

왼쪽 하단의 New를 클릭하여 새로운 connection을 생성해준다.
이때 포트 번호는 도커 설정에 따라줘야 하는데, 나는 기본 포트를 사용했기 때문에 그대로 두었다.
비밀번호는 [Store in Keychain...]을 클릭한 후 팝업 창에 입력하면 된다.

입력이 끝나면 우측 하단 [Test Connection]을 클릭한다.


이런 창이 뜨면 연결 성공이다!

2. connect

설정을 한 후에는 [Database] - [Connect to Database]를 통해 방금 설정한 접속을 할 수 있다.

EER Diagram - reverse engineer

사실 workbench를 쓴 가장 중요한 이유는 Diagram을 쓰기 위해서였다.
workbench 내에서 다이어그램을 그린 후 Forward Engineer를 통해 SQL문으로 export할 수 있고, 반대로 이미 있는 데이터베이스나 SQL 파일을 Reverse Engineer를 통해 Diagram을 생성할 수도 있다.

메뉴에서 [Database] - [Reverse Engineer...]

이미 접속 중이라면 현재 접속 정보가 뜰 것이고, 아니라면 접속 정보를 입력해준 뒤 continue를 클릭하면 된다. 스키마 선택 등을 해주면서 계속 continue를 누르다보면

이렇게 테이블 정보가 뜬다. 만약 전부 선택하고 싶지 않다면 Show Filter를 통해 일부를 선택할 수 있다.

이제 [Execute]를 누르면...

워크벤치가 종료된다. (네?
만약 무사히 모델이 잘 생성되었다면 축하드립니다. 하지만 아무리 시도해도 그냥 냅다 종료...
처음엔 M1 관련 문제인 줄 알고 workbench를 재설치 했다. 8.0.25 -> 8.0.29
하지만 그 문제는 아니었고 덕분에 업데이트 했다
윈도우에서도 같은 시도를 했는데 역시 갑자기 종료...

원인은 MySQL 버전 문제였다. 내가 사용하는 MySQL과 workbench가 사용하는 MySQL 버전이 달라서 생긴 문제이다.

윈도우의 경우 [Edit] - [Preference]를 클릭하면 Modeling - MySQL에 Defualt Target version이 있는데 아마 8.X.X로 되어 있을 것이다. 이 버전이 내가 사용하고 있는 데이터베이스 버전과 달라서 생기는 문제이다. 따라서 사용하는 버전으로 수정해주면 된다.

다만, 나는 MySQL이 아닌 MariaDB:10.5 버전을 사용중인데, 찾아보니 MariaDB:10.1버전이 MySQL:5.7과 호환된다고 해서 5.7로 수정해주었다.

이후 다시 한번 reverse Engineer -> 성공!

profile
나의 삽질이 미래의 누군가를 구할 수 있다면...

1개의 댓글

comment-user-thumbnail
2022년 11월 3일

유익한 포스팅 감사합니다! ^-^

답글 달기