[Database] MySQLWorkbench로 다른 서버 MySQL 원격접속하기

시작하는 개발일지·2021년 4월 7일
1

Database

목록 보기
1/1
post-thumbnail
  • 이 글은 로컬 PC의 MySQLWorkbench 를 이용해 [네이버 클라우드 플랫폼]에서 빌린 SeverMySQL에 접속하는 과정을 다룹니다. (MySQL 설치는 구글링으로..)
  • ServercentOS-7 을 사용했습니다.

1. localhost에서 서버로 원격 접속

ssh root@[서버 접속용 공인 IP] -p [외부 포트]

Server를 구성하고나서, 포트 포워딩 하여 서버 접속용 공인 IP와 외부 포트를 지정할 수 있습니다.

2. MySQL 실행

systemctl start mysqld

** 참고
mysql 상태 확인 => systemctl status mysqld
mysql 실행 중지 => systemctl stop mysqld
그리고 중간에 netstat -tnlp 로 mysqld 포트 확인하고 잘 열려있는지 확인

이제 MySQL Client 접속 !

mysql -uroot -p

3. MySQL 접근 권한 부여

1. 처음에 기본적으로 존재하는 DB 중 "mysql" 로 들어감

use mysql;

2. "mysql" DB안에 "user" 테이블이 있음. 접근 가능 유저를 확인해보자.

host, user 값을 가져와보자.
호스트가 localhost 밖에 없어서 내부 접근만 되고 외부 접근은 안되는 상태다.

select host, user from user;

3. DB 접근 권한 주기

나는 같이 프로젝트 하는 사람들도 쉽게 접근할 수 있게 권한을 줬다.
지정한 호스트명을 가진 사용자는 DB패스워드 로 IP에 상관없이(%) 모든 디비와 테이블(*.*)에 접속하도록 허용한다. (여기서는 root 에게 권한을 줬다. 본인환경에 맞게 지정하면 됨.)
즉, 호스트명이 root인 모든 IP는 이 MySQL을 관리할 수 있다.

grant all privileges on *.* to 'root'@'%' identified by '[DB 패스워드]';

변경사항을 적용한다.

flush privileges;

4. 로컬 MySQLWorkbench로 원격접속하기

Workbench에 들어가서 아래 사진처럼 설정해준다!

  • Connection Method : Standard TCP/IP over SSH
  • SSH Username : root
  • MySQL Hostname : localhost(127.0.0.1)
  • MySQL Server Port : 3306
  • MySQL Server Port : root

커넥션되면 성공!

2개의 댓글

comment-user-thumbnail
2022년 7월 9일

갑사합니다. 맥북은 원격 접속용으로 쓰고, PC는 원격 송출용으로 쓰는데 좋네요.

답글 달기
comment-user-thumbnail
2023년 10월 30일

와 정말 감사합니다 3일간 헤매고 드디어 뚫었습니다 중요한건 mysql workbench에서 over ssh 옵션을 고르는거였네요 ㅠㅠㅠㅠㅠㅠ 감사합니다!!

답글 달기