예전에는 DB를 활용하기 위해서 별도의 서버 컴퓨터를 두고, 서버를 구축해야지만 사용할 수 있었다.

하지만!

지금은 클라우드 서비스가 워낙 잘 되어 있기 때문에 개인이 별도의 서버 컴퓨터를 구매하지 않고도 인스턴스를 온프로미스 방식으로 사용할 수 있다.

그렇기 때문에 문명의 이기를 활용하여 AWS EC2 서비스를 활용하여 나만의 DB를 구축해보도록 하자!

EC2 Instance 생성

  1. 우선 https://aws.amazon.com/ 에 접속하여 회원가입을 진행한다.
  2. 로그인하여 AWS 콘솔창 상단의 검색창에 'EC2'를 검색한다.
  3. EC2를 클릭 후 대시보드에 진입한다.
  4. 대시보드의 중앙에 인스턴스 시작 버튼을 눌러 인스턴스 생성 페이지로 넘어간다.
  5. OS : Ubuntu, AMI : 20.04 선택하기
  6. 키페어 생성하기
  7. 보안그룹에서 3306 포트를 추가한다.(자세한 방법은 Fig4,5,6확인)
  8. 인스턴스 시작 버튼을 눌러 인스턴스를 생성한다.

Fig1. AWS EC2 대시보드 -> '인스턴스 시작'을 누른다.
Fig2. OS : Ubuntu, AMI : 20.04 선택
Fig3. 키 페어 생성 -> AWS EC2 SSH 접속 시 비밀번호 대용으로 사용
Fig4. 네트워크 설정 우상단 '편집' 버튼 클릭
Fig5. '보안 그룹 규칙 추가' 버튼 클릭하기
Fig6. 규칙2의 포트 -> 3306 입력

EC2 인스턴스 접속하기

Fig7. 퍼블릭 IPv4 주소 확인하기

  1. 다운받은 pem 파일을 mv 파일명.pem ~/.ssh 명령어를 통해 ~/.ssh 디렉토리로 옮긴다.
    1. (.ssh 디렉토리가 없을 경우) mkdir ~/.ssh 명령어로 디렉토리를 만든다.
    2. (Only for MacOS) sudo chmod 400 파일명.pem 명령어로 파일 권한을 바꾼다.
  2. ssh -i ~/.ssh/파일명.pem ubuntu@퍼블릭IPv4 명령어로 ssh 접속을 한다.

MySQL Server 설치

  1. sudo apt-get update -y
  2. sudo apt-get upgrade -y
  3. sudo apt-get install -y mysql-server mysql-client 명령어를 통해 mysql 서버를 설치한다.
  4. sudo mysql 로 mysql server에 진입한다.
  5. ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '비밀번호'; 명령어로 서버 비밀번호를 설정한다.
  6. exit 으로 mysql server에서 나온다.
  7. sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
    1. vim에서 bind-address를 127.0.0.1을 0.0.0.0 으로 변경하여 외부접속을 허용해준다.
      ## bind-address = 0.0.0.0
  8. 초기 세팅 이후에 mysql 서버 접속은 다음과 같은 명령어로 가능하다. mysql -u root -p비밀번호
  9. 계정생성 및 권한설정을 진행한다.
    1. CREATE USER 'root'@'%' identified by '비밀번호';
    2. GRANT ALL PRIVILEGES ON *.* to 'root'@'%';
    3. quit
  10. 서버 재시작 후 상태확인으로 세팅을 마무리한다.
    1. sudo systemctl restart mysql.service
    2. sudo systemctl status mysql.service

세팅한 비밀번호는 꼭 기억해둬야 한다.

그러면, 다음 포스팅에서는 Mysql Workbench 설치 후 AWS EC2에 설치한 Mysql Server와 연결하는 방법까지 포스팅하도록 하겠다!

 

Adios!

반응형

'Skill Set > SQL' 카테고리의 다른 글

[SQL] MySQL Workbench 사용하기(for windows)  (0) 2022.09.28
[SQL] MySQL Query의 기초 - 3  (1) 2022.09.20
[SQL] MySQL Query 기초 - 2  (1) 2022.09.20
[SQL] MySQL Query의 기초 - 1  (0) 2022.09.19
[SQL] DB의 이해  (0) 2022.09.16
복사했습니다!