반응형
MySQL Workbench를 이용해서 원격 서버에 있는 MariaDB에 디비 구축을 해보았다.
다이어그램으로 작성하면 한눈에 테이블간 관계 등을 눈으로 쉽게 확인할 수 있어서
EER Diagram으로 모델 작성 후 Forward Engineer를 통해 데이터베이스에 테이블 생성을 하려고 했는데 제목과 같은 오류가 났다.
ERROR: Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ') ENGINE = InnoDB' at line 11
에러메세지 검색을 통해 이 에러가 내 db 버전과 워크벤치 설정의 타겟 db버전이 맞지 않아서 생기는 에러라는 것을 알게 되었다. (기본 타겟 db버전은 8.0.32로 설정되어 있었다.)
해결
📍 내 MariaDB 버전 확인
접속 시 나오는 웰컴 메세지나
mysql -V
mysql -V 명령어를 통해 확인 가능하다.
📍 호환되는 MySQL 버전 확인
MySQL MariaDB version mapping 검색어로 아래 참고사이트를 찾았고
MariaDB 10.3은 MySQL 5.7과 호환된다는 것을 확인했다.
📍 MySQL Workbench 설정 변경
노란네모부분을 클릭하면 preferences 변경을 할 수 있다.
Modeling -> MySQL에서
Default Target MySQL Version을 5.7로 변경하고 저장해준다.
결과
다시 Forward Engineer를 실행하면 정상적으로 동작이 완료되고 데이터베이스에 테이블이 생성된다.
참고
https://mariadb.com/kb/en/mariadb-vs-mysql-compatibility/#mysql-57
반응형