미래의 내가 다시 DB를 건드릴 일이 있을 때 참고하려고 쓰는 글
http://dev.mysql.com/downloads/installer/
밑에 용량 큰 거로 설치하시면 됩니다.
MySQL WorkBench는 이미 만들어진 DB Schemas에서 ERD 를 추출하거나 Schemas를 생성하기 전, ERD 모델링이 가능합니다. 모델링된 ERD의 확장자명은 .mwb이고, 미리 제작해둔 mwb 파일로 실제 물리 Schemas 생성 법을 알아볼 것입니다.
Ctrl + O
또는 File - Open Model
을 통해 .mwb파일 확장자명을 가진 MySQL WorkBench 모델링 파일을 열어줍니다.
그러면 다음과 같이 EER Diagram 화면이 나타납니다.
상단의 Database - Forward Engineer...
이나 Ctrl + G
를 눌러줍니다.
DB 정보를 입력하고 Next,
그 뒤에 나오는 정보들도 특별한 일 없으면 기본 default 값으로 넘겨줍니다.
그러면 Script 문이 생성되는데, 클립보드 복사나 파일로 Script를 저장할 수 있습니다.
저는 파일로 백업한 번 시켜준 뒤, 현재 접속중인 DBMS 서버에 실행시키려고 Next를 눌렀습니다.
그러면 자동으로 DB Schemas에 모델링 파일을 바탕으로 DB 객체들이 생성됩니다.
이렇게 생성을 해도 처음에 Schemas에 보이지 않는다.
이 때는 Schemas에 우클릭을 한 뒤 Refresh All을 눌러주면 된다.
아마 여기까지 한 상태에서 바로 서버랑 연결하려고 하면
ER_ACCESS_DENIED_ERROR
에러가 뜰 것이다.
이를 해결하기 위해서는 MySQL에서 host를 새로 만들어서 권한 부여를 하면 됩니다.
위의 과정에서 이어서 온 거라면 이미 로그인이 되어 있기에 무시하면 된다.
select host, user from mysql.user;
MySQL에 있는 host와 user정보를 가져옵니다.
지금은 이미 추가해놔서 그렇지만, 일반적으로 밑에 localhost만 보일 것이다.
create user '사용자명'@'%' identified by '비밀번호';
여기서 %는 추후 호스트명이 됩니다.
grant all privileges on DB명.* to '사용자명'@'%';
flush privileges;
그런 뒤 다시 select host, user from mysql.user;
를 실행해보면 본인의 사용자명이 추가된 것을 확인하실 수 있습니다.
`drop user '사용자명'@'설정한 호스트명';
저 같은 경우는 호스트명이 %입니다.
이렇게 하면 DB 접속이 잘 되는 것을 확인할 수 있습니다!