본문 바로가기
프로젝트/node.js

원격 서버에 mysql 띄운 후 workbench로 접속 확인하기

by 왕자두 2023. 10. 1.

네이버 클라우드에서 제공하는 클라우드 서버를 사용하여 프로젝트를 원격으로 띄웠다면 사용할 데이터베이스에 대한 설정을 해줘야 한다. 그러나 네이버 클라우드에서 제공하는 스토리지 서비스가 꽤 비싸다고 들어 서버 내부에 mysql을 설치하여 사용하기로 결정하고 아래는 해당 과정을 진행하면서 기록한 내용이다.

아래 과정을 진행하기 전에 mysql에 접속하기 위해서 포트번호를 개인적으로 지정했다면 해당 번호를, 디폴트로 설정되어있는 것을 따로 변경하지 않았다면 3306 포트를 뚫어놔야한다.

 

1. 서버에 mysql 설치하기

- 원격 서버에 접속

- mysql 설치

sudo apt-get install mysql-server

2. mysql 실행 및 root 비밀번호 설정

- mysql 실행하기 

systemctl start mysql
systemctl enable mysql

- root 비밀번호 입력

: 초기에는 비밀번호 없이 enter 쳐도 들어가짐

mysql -u root -p

- root 비밀번호 변경하기

alter user 'root'@'localhost' identified with mysql_native_password by '변경할 비밀번호';

3. DB 생성하고 .sql 파일 적용하기

- DB 생성 후 접근하기

 create database dimo;
 use dimo;

- .sql 파일 적용하기

source /파일경로/파일이름.sql

4. mysql 외부 접속을 위한 mysql.cnf 설정하기

 ⚠️ 이 부분을 진행하지 않으면 외부에서 접속 불가능

- mysql.cnf 수정하기 

vi /etc/mysql/mysql.conf.d/mysqld.cnf

bind-address를 127.0.0.1 에서 0.0.0.0 으로 변경

port는 기본 3306이지만 다른 포트 번호를 사용할 것이라면 다른 번호로 변경

- mysql 재시작하기

systemctl restart mysql

5. DB에 접속할 root 이외의 사용자 생성 후 권한 부여

- 사용자 생성

: root로 mysql에 로그인하여 진행

create user '생성할 사용자 id'@'%' identified by '비밀번호';

- 생성한 사용자에 권한 부여

grant all privileges on *.* to '생성한 id'@'%' identified by '비밀번호' with grant option;
flush privileges;

6. Workbench에서 접속 확인하기

- 서버 공인 IP와 포트 번호, 생성한 사용자, 비밀번호를 입력하여 커넥션이 정상적으로 되는지 확인

Test Connection 을 클릭했을 때 정상적으로 Successful이 뜨면 정상적으로 커넥션이 되고 있는 것이다.

 

참고

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

https://velog.io/@cptkuk91/AWS-EC2%EC%97%90-MySQL-%EC%84%A4%EC%B9%98-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0

 

AWS EC2에 MySQL 설치, 사용하기

개인적인 생각입니다.RDS가 존재하지만, EC2에 MySQL을 설치, 사용하는 경우는 RDS를 사용해야 할 만큼 규모가 큰 프로젝트가 아니거나, 단순히 연습을 위해서라고 생각됩니다.물론 RDS를 EC2에 연동

velog.io