MySQL Workbench를 이용해서 쉽게 기존 DB SCHEMA 그대로 새로 SCHEMA 생성하기

1. MySQL Workbench에서 Model 메뉴 진입 2. Reverse Engineer 선택 3. 복제할 대상의 Schema를 선택 후 모든 option next 대충 이런식의 모델이 생성된다. 4. 이 상태에서 그대로 Forward Engineering 5. 적절하게 원하는 옵션선택해주고 나면 마지막에 대략 이런 SQL문이 만들어진다. 이걸 실행하지는 말고 만들어진 내용만 복사하자. DB명을 새로 만들 DB명으로 변경해줘야 하니까. 스샷 기준으로는 abmgt_prod를 my_new_table_name으로 변경하면 되겠다. 그대로 안되고 에러나는 경우가 있다. MySQL 버전차이로 생기는 문제일 수 있고 문제의 원인은 다양한데 내 경우엔 2가지 이슈가 있었다. 1. Date에 0000-00-00과 같은 값이 허용되지 않음. 3번째 줄 SQL_MODE의 String에 ,ALLOW_INVALID_DATES 를 추가하니까 해결. 2. UNIQUE INDEX 생성 구문 에러 MySQL 버전따라서 `Unique INDEX(id).. VISIBLE)` 이런 곳에서 에러가 날 수 있다. MySQL 버전차이 때문에 그럴텐데 VISIBLE 혹은 INVISIBLE을 없애거나 꼭 사용하는데 필요하다면 MySQL의 버전을 올리던가 해야한다.