본문 바로가기
  • 포르쉐타고싶다
인포테인먼트 - development/sql

[MySQL] Forward Engineering 하는 도중 에러 해결

by 지오ㄴl 2020. 5. 25.

1. 배경

 

데이터베이스 서버를 옮기려고

기존 데이터베이스의 erd를 따서

새로운 MySQL서버에 

Forward Engineering 을 하는데 자꾸

Executing SQL script in server
ERROR: Error 1064: You have an error in your SQL syntax; 
check the manual that corresponds to your MySQL server version
for the right syntax to use near 'VISIBLE,
  CONSTRAINT `fk_Compras_Personas`
    FOREIGN KEY (`p

라고하는 에러가 생겨 진행을 못하고 있었다.

 


 

2. 개념

 

위의

ERROR: Error 1064: You have an error in your SQL syntax; 
check the manual that corresponds to your MySQL server version~~

 

하는 에러는 내 문제이거나 내가 하려고 하는 것이 지금의 MySQL 서버의 버전과 맞지 않다는 에러이다

 

보통의 경우 내 sql상의 원인이 많아서

내 쪽에서 원인을 찾으려고 했는데

알고보니

 

말 그래도 MySQL의 버전이 달라 생긴 문제였다.

 


 

3. 해결

 

RDS에서 설정한 MySQL서버는 5.7버전이었지만

설치된 MySQL Workbench의 버전은 8.0버전으로 설정되어 있어서

5.7버전으로 딴 erd가

8.0버전으로 설정된 Workbench에 호환되지 않아서 생기고 있는 문제였다.

 

MySQLWORKBENCH -> preferences -> Modeling -> MySQL

=> Model/Default Target MySQL version : 8.0.16 => 5.7.26 (MySQL서버와 동일하게!)

 

위와 같이

Workbench의 버전을 MySQL버전과 같이

5.7.26버전으로 수정해주었더니 해결되었다

반응형

댓글