본문 바로가기

전체 글79

RDS RDS는 Relational Database Service의 약자로, 데이터베이스 서버라고 생각할 수 있다. 예를 들어 예전에 유행했던 크레이지 아케이드 게임을 생각해보자. 크레이지 아케이드 플레이어는 해피 서버, 또는 드림 서버 중 하나의 서버에서 계정을 생성할 수 있다.만약 해피 서버에서 계정을 생성했다면, 드림 서버의 플레이어와 게임을 함께 할 수 없다.  이것은 두 서버가 서로 다른 두 db를 사용하기 때문에 발생하는 현상이다.이를 해결하기 위해 n개의 서버가 1개의 공통된 db를 사용하는 것이 필요하다.이를 구현한 것이 RDS 이다.  예를 들어, 구글에서 계정을 생성했는데 구글 서비스도 사용할 수 있고, 유튜브 서비스도 사용할 수 있다. 이는 두 서비스가 공통된 db에 접속할 수 있기에 가능한.. 2024. 9. 30.
RDBMS 설계 - 시스템, 논리, 물리 RDBMS 개념 rdbms는 relational database management system의 약자이다.서로 다른 테이블은 각 테이블에 있는 속성을 통해 이어질 수 있다.  예를 들면 아래와 같다. 하나의 학생에 대해 출석부와 성적부가 있다고 가정하자.출석부성적부이름이름학과학과학번학번 연락처연락처 성적 수강과목 성적부에는 출석부와 중복되는 속성이 4가지 있다.이것을 해결하기 위해, 성적부에는 '학번'만 남겨두고, 학번을 통해 출석부 테이블을 참조해 나머지 4가지 속성을 가져 올 수 있다.  이처럼 중복되는 정보를 대체해 테이블끼리 데이터를 참조할 수 있다. "학생"이라는 스키마가 있고, 그 안에 "학생 정보", "수강 과목" 등의 테이블이 있다."학생 정보" 테이블에는 "학번", "이름", "연락처.. 2024. 9. 30.
프로그래머스 340213번 def solution(video_len, pos, op_start, op_end, commands): # 각 시간 문자열을 초 단위로 변환 def time_to_seconds(time_str): minutes, seconds = map(int, time_str.split(':')) return minutes * 60 + seconds video_len_sec = time_to_seconds(video_len) pos_sec = time_to_seconds(pos) op_start_sec = time_to_seconds(op_start) op_end_sec = time_to_seconds(op_end) # 명령어 처리 for comman.. 2024. 9. 29.
Crontab을 사용해 SSL 인증서 자동 갱신하기 Let's Encrypt 인증서는 유효기간이 90일이기 때문에 만료되기 전에 정기적으로 갱신해야 한다. 갱신을 하지 않으면 SSL 인증서가 만료되어 웹사이트는 안전하지 않은 상태로 표시될 수 있다. Crontab을 사용해 갱신 명령어가 일정 시간을 주기로 자동으로 수행 되게 할 수 있다.  1. 갱신 명령어 certbot renew 서버에 설치된 모든 Let's Encrypt 인정서를 점검한 후, 유효기간이 만료되기 전인 인증서를 자동으로 갱신하는 명령어이다. 2. Crontab Crontab은 리눅스 스케쥴러 도구로, 서버에서 특정 작업을 정해진 시간 간격으로 자동으로 실행하도록 설정해주는 도구이다. 아래 명령어를 실행하여 크론탭 파일을 연다.crontab -e 파일에 아래 줄을 입력하여, certbo.. 2024. 9. 29.
무료 SSL 인증서를 발급받아 https 통신 적용하기 현재 사용 중인 nginx 서버는 aws ec2 인스턴스와 연결되어 있다. 0. aws 콘솔에 접속해 ec2 인바운드 규칙에 https를 추가인바운드 규칙 편집을 눌러서 https 규칙을 추가하고, anywhere로 지정하였다. (ipv4, ipv6 두개 다 추가) 1. Let's Encrypt 인증서 발급Let's Encrypt를 사용하면 무료로 SSL인증서를 발급받을 수 있다.발급 받기 위해 Cerbot을 설치한다. 1-1. Cerbot 설치먼저 EC2 인스턴스에서 Cerbot을 설치한다. Ubuntu의 경우 다음 명령어로 설치할 수 있다. sudo apt updatesudo apt install certbot python3-certbot-nginx 1-2. SSL 인증서 발급Nginx와 연동하여 인.. 2024. 9. 29.
gabia 도메인과 ec2 서버 인스턴스 연결하기 우선, Gabia DNS 관리 창에 들어가 도메인의 레코드를 추가한다. 레코드를 추가한 후 아래 4가지를 수정한다.   타입 : A를 선택한다. Address record 의 약자로, 주소를 알려 호스트 : @를 입력한다. 이 설정은 루트 도메인에 대한 ip주소를 지정하는 것이다. 예를 들어 루트 도메인이 example.com이라면, 이 레코드는 example.com에 대한 설정이 된다.  값/위치 : 도메인에 연결될 ipv4 주소를 입력한다.  ttl : 3600(1시간)으로 지정하였다. 한시간 뒤에 DNS 서버가 캐시 정보를 업데이트할 것이다.  gabia 홈페이지에서 레코드에 대한 설정을 위와 같이 마친 후, ec2 인스턴스에 터미널로 접속해 수정을 이어나간다.  1. nginx 설정 파일로 들어.. 2024. 9. 28.