카테고리 없음

MYSQL 원격접속 허용/연결하기

kmsoon 2024. 4. 8. 13:37

*EC2를 이미 생성했다는 전제하에 쓴 내용입니다

-EC2 만드는거 쉬워용,, 검색해서 찾아보면 뚝-딱

 

 

팀원들과 프로젝트를 진행하려면 같은 db를 사용해야한다

그래서 같은 db를 사용하기 위해 mysql 원격접속이 필요하다

 

1. root 계정으로 우분투 로그인

mysql 외부접속 허용하기 전에 아래 링크를 참고하자

(ec2 root 계정으로 우분투 로그인하기)

https://calvinjmkim.tistory.com/25

 

[AWS] EC2 root 계정으로 우분투 로그인 하기

아마도 우분투가 가장 많이 쓰이는 리눅스 배포판일 것이다. 그런데 언제부터인가 이후 우분투 버전은 인스톨 후에 ssh를 통해 root 계정으로 로그인하는 부분을 디펄트로 막아놓았다. 실제로 운

calvinjmkim.tistory.com

링크의 본문을 설명하자면

 

step 1 설명:

cmd 열어서 ssh -i pem.key경로\파일이름 ubuntu@ec2 퍼블릭 ip(탄력적 ip)

이후 step 1을 잘 따라한 후

step 2 설명: 

ssh -i pem.key경로\파일이름 root@ec2 퍼블릭 ip(탄력적 ip)

이후 단계들을 모두 잘 따라한다

단계 실행 중 파일 내용이 다르면 링크 본문과 같게 vim으로 수정해주면서 진행한다

 

**만약 ssh -i pem.key경로\파일이름 ubuntu@ec2 퍼블릭 ip(탄력적 ip)에서 pem 키가 아니라 ppk라면 pem 키로 변환해준다

https://velog.io/@johoon815/AWS-%ED%82%A4-%ED%8E%98%EC%96%B4-ppk-To-pem-%ED%8C%8C%EC%9D%BC-%EB%B3%80%ED%99%98%ED%95%98%EA%B8%B0

 

[AWS] 키 페어 ppk To pem 파일 변환하기

ppk ↔ pem 파일 변환하는 방법

velog.io

 

 

 

2. Mysql cnf 파일 수정

https://yoshikixdrum.tistory.com/217

 

[Ubuntu] Ubuntu20.04 에서 Mysql 외부접속 허용하기

Mysql은 로컬이 아닌 외부에서 접속을 시도하면 오류가 나옵니다. 그 이유는 Mysql은 설치 시 기본적으로 로컬에서만 접속 가능하게 설정이 되어있기 때문입니다. 그렇기 때문에 외부에서 접속을

yoshikixdrum.tistory.com

그다음 위의 링크를 참고한다

본문 내용 중

sudo vim /etc/mysql/my.cnf

cnf 파일이 없어서 위의 문장이 실행되지 않았는데 이럴땐 우분투에 mysql이 있는지 확인해주고

없으면 우분투에 mysql을 설치해준다

 

 

https://velog.io/@seungsang00/Ubuntu-%EC%9A%B0%EB%B6%84%ED%88%AC%EC%97%90-MySQL-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0

 

[Ubuntu] 우분투에 MySQL 설치하기

apt-get 이라는 패키지 매니저를 이용해 설치를 진행한다. (우분투 리눅스를 설치했다면 이미 설치되어 있다.) 1. 우분투 서버 업데이트 2. mysql-server 설치 $ sudo apt-get install mysql-server 설치 중간 중간

velog.io

 본문 내용의 iptables rule추가 부분을 sudo ufw allow 3306으로 해결해줬다

 

 

 

그리고 ec2 인스턴스 인바운드 규칙에서 http 80 포트와 ssh 22번 포트를 0.0.0.0으로 설정해주어야 한다

그외 mysql 3306 포트도 잊지 말자

 

 

 

3. Mysql DB 접근 권한, 외부 접속

https://velog.io/@jdk9908/%EC%99%B8%EB%B6%80%EC%97%90%EC%84%9C-MySQL-%EC%A0%91%EC%86%8D%ED%95%98%EA%B8%B0

 

외부에서 MySQL 접속하기

EC2 인스턴스 서버에서 root계정으로 접속해서 계정을 만든다.그리고 admin계정으로 조회할 수 있는 데이터베이스 및 테이블을 생성한다.test라는 데이터베이스에 대한 모든 권한을 admin 계정에게

velog.io

https://galid1.tistory.com/349

 

CentOS7 - Mysql 원격접속 허용하기(Host 'IP' is not allowed to connect to this MySQL server)

Host 'IP' is not allowed to connect to this MySQL server- Mysql 은 기본적으로 Local에서만 접속이 가능하도록 되어있다 때문에 별도의 설정을 해주어야 원격 접속이 가능하다 1. root의 접속권한 확인- root 계정

galid1.tistory.com

 

혹시 모르니 putty 사용법도 추가해놓겠다....--------------------------------------------------------------------------------

https://inpa.tistory.com/entry/PuTTy-%F0%9F%92%BF-%EC%84%A4%EC%B9%98-%EB%B0%8F-%EC%82%AC%EC%9A%A9%EB%B2%95

 

💿 PuTTy 설치 & 사용법 (SSH / Serial 접속)

PuTTY 푸티는 가장 많이 알려진 SSH 프로토콜은 웹호스팅을 이용하거나, 리눅스서버에 접속하기 위하여 사용하는 원격접속 툴이다. 리눅스나 유닉스 계열의 서버에 원격으로 접속할 수 있는 클라

inpa.tistory.com

----------------------------------------------------------------------------------------------------------------------

 

 

 

 

4. DB 접속

connection name: 식별 가능한 이름 (프로젝트 이름으로 해줬다)

hostname: ec2에서 할당해준 퍼블릭 ip(탄력적 ip)

username: mysql 접근 권한이 있는 유저 이름을 넣어준다

password: 유저 생성 시 넣어줬던 비밀번호 - 안되면 mysql 비밀번호를 재설정 해주자

하고 test connection 버튼 누르기 하면 성공이다