클라우드서비스_AWS_RDS(MySQL)

윤일권·2022년 5월 3일
0

CloudService

목록 보기
6/8

RDS

정의

: RDS는 'Relation Database Service'의 약자로 클라우드에 데이터베이스를 구축힐 수 있는 환경을 만들어 주는 서비스이다.
그 중에서 AWS에서 제공하는 RDS는 관계형 데이터베이스를 더 쉽게 설치, 운영 및 확장할 수 있는 웹서비스이다.
AWS_RDS는 산업 표준 관계형 데이터 베이스를 위한 경제적이고 크기 조절이 가능한 용량을 제공하며 공통 데이터베이스 관리 작업을 관리한다.
또한 AWS에서 이용하는 EC2틑 통한 RDS를 대부분의 데이터베이스 배포에서 번거러운 수동작업을 처리할 필요가 없어 애플리케이션과 사용자에게 집중할 수있는 RDS를 선택하는 것이 좋다.

AWS_RDS

DB생성

지금부터 DB를 생성해본다.
▼AWS로그인 후 검색창에 RDS를 입력한다.
이후 밑에 사진과 같이 데이터베이스 생성창에서 데이터베이스생성 클릭.

▼표준생성을 선택 후 엔진 옵션은 mysql을 이용하자.

▼템플릿은 실습용이므로 반드시 프리티어를 선택해준다.

▼설정에서 DB인스턴스 식별자는 DB이름을 설정하는 것이고,
마스터 사용자, 마스터 암호는 root와 같은 것이다.

▼다음 연결에서 중요한 부분은 '퍼블릭 엑세스'이다
이를 퍼블릭을 '예'로 설정해줘야 외부에서 원격으로 접속할 수 있다.

▼생성 버튼 클릭 시 데이터베이스가 생성된다.

DB설정

▼ 생성한 DB로 들어가 '유지 관리 및 백업'탭을 클릭하면 아래와 같은 화면을 볼 수 있다.
백업 부분에서 자동 백업이 7일 단위로 진행된다는것을 알 수 있다.

▼백업창 밑에 스냅샷창을 볼 수 있을것이다.
스냅샷 : 확인 당시의 DB자료를 저장한 것이다.
말 그래도 해석해보면 사진을 찍은 것이다.
즉 RDS를 백업하기 위해 사용하는 것인데 백업을 하기 위해서 스냅샷을 생성하고 복구하기 위해서 스냅샷을 복원하다.
이러한 과정에서 DB인스턴스는 생성이 되며, DB인스턴스 자체에서 백얼을 하지 못한다.

▼작업에서 보면 읽기 전용 복제본 생성이라는 것이 있다.
읽기만 가능하고 쓰기는 안되는 복제본을 생성하다는 것이다.
분석가들 경우 쓰기는 필요없고, SELECT를 얼마나 잘 하느냐가 분석가의 능력이라 본다.
그런데 하나의 데이터베이스로 모든 사용자가 들어갈 수 없다. 그래서 여러개의 복제본을 만들어서 사용한다. 즉 하나의 데이터베이스에 대한 복제본을 만들어 여러 사용자가 들어간다.
이때 스냅샷은 샷을 걸어놓은 시점의 자료로 돌아갈 수 있다.

▼VPC보안 및 앤드포인트, 포트
-VPC보안은 Anyware-IPV4로 설정해 모든 주소를 받는다.
-앤드포인트는 원격으로 들어갈 주소다. 후에 접속시 -h라는 옵셕과 함께 사용한다.

UBUNTU 실습

ubuntu 접속

▼ 처음 이전 실습과 같이 putty를 통해 접속 후 아래와 같은 명령어를 입력한다.
처음에는 따로 유저가 없어서 마스터 유저로 접속한다. 나중에는 유저를 하나 만들어 줄 것이다.
명렁어 : mysql -u 유저이름 -p -h 앤드포인드
유저이름 : 유저 이름
옵션
-p : 패스워드를 물어본다는 옵션
-h : host의 약자

▼명령어: show databases; 를 입력해 데이터베이스를 확인한다.

▼명령어 : create database 데이터베이스이름; 을 입력해 데이터베이스를 만들어준다.

▼다음은 위에 말한것과 같이 유저 하나를 만들어주자
명령어 : create user '유저이름'@'%' identified by 'cloud';
유저이름 : 유저 이름
옵션
% : 어디서든 접속할 수 있다.

이후 root로 로그인한 것과 같은 방식으로 생성한 유저아이디로 로그인해준다.

유저에게 권한부여

▼show databases; 명령어를 통해 데이터베이스를 확인해보면 root로 접속했을 때 데이터베이스는 보이지 않는다.
권한이 없기 떄문 !!!
마스터 유저로 들어가 권한을 부여해부자

▼명령어 : grant all priviliges on 데이터베이스명. to '유저명'@'%';
옵션
.
: 데이터 베이스의 모든것
명령어: flush privileges;

▼이제 cloudusr에게 clouddb에 대한 모든 권한을 부여했다.
show databases; 명령어를 통해 확인해보자.

DB이용 및 Toad이용

계속해서 프롬프트를 이용하기 힘들어 Toad를 이용할 것이다.
Toad 뿐만이 아니라 Mysql workbench를 사용해도 무관하다.
▼connect를 클릭해 DB와 직접 연결해주자.
group을 MySQL로 지정해준다. 여기서 Host는 DB엔드포인트를 넣어야된다.

▼위 과정을 완료하면 Edit을 클릭 후 쿼리문을 들어가 테이블을 만들어주자.

▼ 다음 테이블 안에 튜플들을 넣는다.

▼ SELECT * FROM book;을 이용해 테이블을 확인해보자.

성공~

html 생성

해당 테이블을 html에서 사용할 수 있게 해보자.
▼Ubuntu에서 cd를 사용해 /var/www/html로 들어가 sudo create.php를 생성하자.

▼process_create.php도 만든다.

▼마지막으로 mysql과 연동해준다.
php 버전을 확인하고, php용 mysql를 설치하자.
아래와 같은 순서로 명령어를 입력하자.
sudo apt install php버전-mysql //apt 설치
sudo service mysql restart //mysql restart
sudo apachectl restart //아파치 restart
sudo apt update //apt 업데이트
sudo apt-get install mysql-server //mysql server 설치
sudo service mysql restart //mysql service restart
sudo apachectl restart //아파치 restart

끄읕~

profile
생각하는 개발자가 되겠습니다!!

0개의 댓글