클라우드 서비스 RDS 생성과정

robin Han·2023년 5월 4일

클라우드서비스

목록 보기
6/10
post-thumbnail

http 보안그룹에 추가

php 연동

	sudo-apt update 
    sudo-apt upgrade
    sudo-apt install -y php

RDS database 생성

Create DataBase를 클릭 하면, 해당 DB를 설정 할수있는 페이지가 나온다,

생성할 방식인데 오르쪽이 더 쉽게 세팅할수있게 해주는거 같다

Database 선택/ 원하는 데이터베이스와, 버전 선택

제공 탬플릿, (프리티어 사용) 목적에 맞는 템플릿 사용

이름/ 마스터계정권한과 비번 설정

퍼블릭 공용 엑세스 설정

해당 부분을 Yes 로 해야 public IP 주소로 연결이 가능하다.

추가적으로 더 많은 설정 부분들이 있지만 실습에서 사용하지 않았지만 추후 더 알아보고, 해당 프로젝트/프로덕트에 맞게 설정 하면 될꺼같다.

이제 데이터베이스 생성하는데, 5분정도의 시간이 걸린다.

엔드포인트와, 포트번호 확인


엔드포인트가 주소이기때문에 많이 사용되므로 따러 저장 RDS/mysql 기본 포트 3306

RDS 생성이 완료 Mysql 설치

// instance 접속후 
sudo apt install mysql-client-core-8.0
//mysql 접속 
 mysql -u admin -p -h 엔드포이트 
 mysql -u admin -p -h aws******.rds.amazonaws.com
//php 와 mysql 연동 
sudo apt install libapache2-mod-php php-mysql
sudo apt-get install php-mysql
sudo service apache2 restart
//php 와 mysql 연동 확인 
 mysql -u admin -p -h 엔드포인트
 mysql -u admin -p -h aws******.rds.amazonaws.com

연동 확인 끝났으면 , Mysql로 DB 생성

//mysql접속
 mysql -u admin -p -h 엔드포이트 
CREATE DATABASE DB이름;

admin 은 모든 권한을 가지고 있기때문에, admin을 사용해서 DB를 관리 하기보단 따로 사용자를 만들어준 다음 해당 사용자한테 필요한 권한만 주는게 안전하다.

DB User 생성 및 권한

// % 에는 원래 IP address 가 들어가야되지만 모든 IP 에서 사용하가위해 %로 처리 
//유저 생성 
CREATE USER '유저이름'@'%' IDENTIFIED BY '비번';
//권한 주기 
GRANT ALL PRIVILEGES ON 디비명.* TO '유저명'@'%';
//메모리에 반영 
flush privileges;
//권한 부여 확인
show grants for '유저명'@'%';

원래대로라면 TOAD 라는 프로그램으로 작성 했지만, Mac 에서 Toad 쓰는 법을 몰라서 Mysql workbench로 진행했다

이제 해당 DB 와 php 소스들로 작성해보기 .
우선 페이지들을 생성

<?php $name=$_POST['name'];
$email=$_POST['email'];
$num=$_POST['num'];
$con = mysqli_connect("엔드포이트 ”,”유저이름”,”비번”,”DB이름”) 
or die ("Can't access DB");
$query = "insert into student (name,email,num) 
values('".$name."','".$email."','".$num."')";
$resut=mysqli_query($con,$query);
if(!$result) 
{?>
   <script> alert('회원가입이 완료되었습니다.'); 
   location.href=".."; 
   </script> 
<?php
} else {?>
   <script> alert('회원가입에 실패했습니다.\n다시 시도해 주세요.'); location.href="..";
   </script>
<?php } ?>
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>예제 회원가입</title>
    </head>
    
    <body>
        <form method="post" action="./signup_action.php">
            <label>이름 <input type="text" name='name'> </label><br>
            <label>이메일 <input type="email" name='email'> </label><br>
            <label>학번 <input type="number" name='num'> </label><br>
            <input type="submit" value='가입하기'>
        </form>
    </body>
</html>

다음과 같이 작성했다. 둘다 /var/www/html 에 저장

0개의 댓글