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버전으로 수정해주었더니 해결되었다
반응형
'인포테인먼트 - development > sql' 카테고리의 다른 글
[MySQL] RDS에 서버를 둔 MySQL의 Default Charset를 utf8로 설정하기 (0) | 2020.05.25 |
---|---|
[MySQL] INSERT할 때 배열을 INSERT하는 방법 (0) | 2020.05.04 |
[mysql] mysql과 excel 연동하기 : mysql for excel (2) | 2020.04.26 |
[mysql] INSERT - 중복되는 데이터는 넣지 않기 (2) | 2020.04.24 |
[mysql] procedure의 인자로 배열 전달 : FIND_IN_SET (0) | 2020.04.24 |
댓글