brunch

You can make anything
by writing

C.S.Lewis

by Master Seo May 11. 2020

355.AWS RDS , Maria DB 사용하기

MariaDB를 많이 사용하고 호환성도 좋다.

사용하는 법을 알아보자.

RDS생성  https://brunch.co.kr/@topasvga/743

RDS생성과 데이터베이스 연결하기 https://brunch.co.kr/@topasvga/696




AWS  RDS 중 하나인  MariaDB를 설치해보자.



<1>  서브넷 그룹을 생성한다.

<2>   MariaDB  생성,  RDS

<3>  DB 파라미터 그룹을 생성한다.

<4> 보안 그룹을 설정한다.

<5> 리눅스에서 mysql 클라이언트로 DB 연결 테스트를 해보자.

<6> mariadb 생성법 aws자료

<7> DB  삭제




<1>  서브넷 그룹을 생성한다.


서브넷 그룹을 생성하고 DB에 적용한다.

DB는 DB zone에 위치해야 한다.


1. RDS >  서브넷 그룹 > 이름  mariadb03-dbsubnet

2. VPC에서 해당 VPC선택

3. 가용 영역 모두 선택

4. 서브넷 선택 (DB Zone 서브넷만 선택한다)

무슨 말인지 아시죠?

Vpc가 public private db subnet으로 나눕니다.


우선, 여기는 연습이라 public zone에 놓고 연습합니다.

외부에서 직접 접속하는게 연습하긴 편해서.




<2>   MariaDB  생성,  RDS


1. 개발/테스트로 설치해보자.


2. Master password 설정한다.



3. 반드시 VPC안에 놓도록 한다.

VPC선택을 하지 않아도 생성은 된다.



4.  추가 연결 구성 클릭

1) 퍼블릭 액세스  예로  설정해서 테스트한다.

실제 서비스 일 때는 퍼블릭 액세스를 아니오로 해야 한다.


2) 가용 영역을 선택해야 한다.



3. 추가 구성한다.

데이터베이스 이름  

seo_mariadb01으로 설정한다.




<3>  DB 파라미터 그룹을 생성한다.


1. 그룹 이름을 을 준다.

health-mariadb01-pg





2. Parameters 시간을 서울로 설정한다.

time_zone  

Asia/Seoul로 선택한다.


3. 최대 연결수는 200 정도로 한다.

max_con

200



4. 데이터베이스

수정




DB 파라미터 그룹을  새로 만든 그룹으로 변경한다.

바로 즉시 적용한다.



5. DB Reboot 한번 해준다.




<4> 보안 그룹을 설정한다.


1. DB 접속할 수 있도록 네트워크 허용해야 한다.

1) 새 보안 그룹을 만들고 적용해서  내 PC와 EC2 서버를 허용한다.

EC2 > Security Group   > health-mariadb01-sg  > Add Rule >   Mysql  Any로 우선 허용한다. (테스트)


2) 새 보안 그룹을 적용한다.

RDS >  Databases >  수정  >  health-mariadb01-sg  추가한다.





<5> 리눅스에서 mysql 클라이언트로 DB 연결 테스트를 해보자.


1. Linux ec2에서 접속

[root@ip-10-0-0-167 ~]# yum install mysql

Is this ok [y/d/N]: y


[root@ip-10-0-0-167 ~]# mysql -u admin -p -h database-1.cemo7iuvrsot.us-west-2.rds.amazonaws.com

Enter password:


MariaDB [(none)]> show databases;

+--------------------+

| Database           

+--------------------+

| information_schema

| innodb             

| mysql              

| performance_schema

+--------------------+

4 rows in set (0.00 sec)

MariaDB [(none)]>


캐릭터 셋 확인

MariaDB [(none)]> show variables like 'c%';


시간 확인

MariaDB [(none)]> select @@time_zone,now();

+-------------+---------------------+

| @@time_zone | now()               

+-------------+---------------------+

| UTC         | 2020-05-12 08:07:29

+-------------+---------------------+

1 row in set (0.01 sec)

// DB파라미터 변경으로 한국 시간으로 변경하자.


MariaDB [(none)]> create database health default character set utf8;

Query OK, 1 row affected (0.00 sec)


MariaDB [(none)]> show databases;

+--------------------+

| Database           

+--------------------+

| health             

| information_schema

| innodb             

| mysql              

| performance_schema

+--------------------+

5 rows in set (0.00 sec)


MariaDB [(none)]> use health;

Database changed

use


CREATE TABLE test (

  id bigint(20) NOT NULL AUTO_INCREMENT,

  content varchar(255)  DEFAULT NULL,

  PRIMARY KEY (id)

) ENGINE=InnoDB;


insert into test(content) values('tesssssssss');


select * from test;

+----+-------------+

| id | content     

+----+-------------+

|  1 | tesssssssss

+----+-------------+

1 row in set (0.00 sec)




또는


2. Windows pc에서

client download  https://dev.mysql.com/downloads/workbench/


No thanks, just start my download.  클릭 다운로드해  설치하자.


혹, c++ 2019가 없어 안된다고 하면

https://support.microsoft.com/ko-kr/help/2977003/the-latest-supported-visual-c-downloads


Workbench가 설치되면 연결 테스트를 한다.




<6> mariaDB 생성법 aws자료

https://aws.amazon.com/ko/getting-started/hands-on/create-mariadb-db/




<7> DB  삭제

최종 스냅샷 생성 여부 체크 해제후 삭제 가능하다.

테스트라 스냅샷을 남길 필요가 없다.


delete me


감사합니다.


매거진의 이전글 354. 건강관리 서비스를 만들며 AWS 기능 사용
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari