MySQL, PostgreSQL 차이
·
💾 Backend/DB, SQL
개인 프로젝트를 해보려다가 MySQL과 PostgreSQL의 차이가 궁금해져서 이것저것 자료를 찾아보고 공부해보았다. 둘의 공통점과 차이점을 공부하면서 ORDBMS도 알게 되었고, 올해 상반기에 정보처리기사 공부하면서 봤던 ACID도 다시 보게 되었다. 하나씩 정리해보자.✍MySQL과 PostgreSQL의 공통점과 차이점일단 공통점은 둘 다 '관계형 데이터베이스 시스템(RDBMS)'이라는 것이다.둘의 차이점은 데이터를 어떻게 처리하고 관리하느냐에 있다.MySQL의 특징스토리지 엔진으로 InnoDB를 사용할 때에만 ACID를 준수한다.순수 관계형 데이터베이스 시스템이다.MVCC를 제한적으로 사용하여 읽기 전용 명령을 관리하기 편리하지만, 동시성이 필요한 경우는 선호되지 않는다.읽기 요청과 쓰기 요청이 충돌..
AWS 관련 용어 정리 (인바운드, 아웃바운드, 서브넷)
·
💾 Backend/PHP, Cloud
아는 것도 있지만 이번 기회에 정리해두는게 좋을 것 같아서 기록한다.정보처리기사 필기 공부할 때, "서브넷 마스크" 관련 문제가 있었는데 여기 나오네!AWS 관련 용어들의 기본 개념인바운드(Inbound): 외부에서 클라이언트의 요청이 AWS 서버(EC2 인스턴스)로 들어오는 트래픽.아웃바운드(Outbound): AWS 서버가 처리한 요청을 외부로 내보내는 트래픽.포트(Port): 컴퓨터 네트워크에서 특정 서비스나 애플리케이션을 식별하는 번호. 서버 애플리케이션은 각자 고유한 포트 번호를 사용하고, 프로토콜은 특정 포트를 사용하여 통신한다. 포트 범위는 0부터 65535까지 존재하며, 보안상 0~1023번 포트를 Well-known port라고 한다.일반적으로 잘 알려진 서비스들이 Well-known 포..
간단한 php 문법
·
💾 Backend/PHP, Cloud
php 코드는 어떤 문법을 가지고 있는지 궁금해서 살짝 살펴봤다.JS랑 비슷한거 같으면서도 달라서 신기했다.https://www.w3schools.com/php/ W3Schools.comW3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.www.w3schools.com배열echo "1. 인덱스 배열 ";$fruit = array("apple", "banana", "grape");echo $fruit[1] . ..
php 실행을 위한 툴 설치 (Apache, Tomcat)
·
💾 Backend/PHP, Cloud
회사에서 php가 섞인 JS 코드를 보기 위해서 각종 툴을 설치했다.php가 섞인 코드를 보려면 (당연히) php를 설치해야하고, apache 웹 서버도 함께 설치해야한다.나는 여기에 추가적으로 Tomcat과 JDK를 설치했다. 간단하게 설치 과정을 기록해본다.✍Apache, Tomcat의 개념은 아래 블로그 참고.https://inpa.tistory.com/entry/TOMCAT-%E2%9A%99%EF%B8%8F-%EC%84%A4%EC%B9%98-%EC%84%A4%EC%A0%95-%EC%A0%95%EB%A6%AC [TOMCAT] 🐱 아파치 톰캣 개념 구성 & 설정 💯 정리아파치 (Apache) 와 톰캣 (Tomcat) 아파치 (Apache) 아파치 소프트웨어 재단에서 만든 웹서버(web server..
Fast API에서 비밀번호 검증하기
·
💾 Backend/FastAPI
글 생성 시에 비밀번호를 입력받는다면, 수정과 삭제에도 비밀번호 기능이 있어야 하기 때문에 추가했더니 다양한 에러가 발생했었다. 최종적으로 모두 해결했기에 기록하는 글.✍대부분의 코드는 지난 글의 내용과 비슷하기 때문에, 지난 글 링크도 같이 첨부한다.※ Fast API에서 비밀번호 해싱하기 - https://hjinn0813.tistory.com/151 Fast API에서 비밀번호 해싱하기CRUD가 되는 게시판에서 글 생성 시에 비밀번호 해싱하기hjinn0813.tistory.comUnknownHashError 트러블슈팅게시판 프로젝트에 비밀번호 기능을 추가하고 실험하면서 다양한 에러가 있었는데, 해결까지 가장 시간이 오래 걸렸던게 "passlib.exc.UnknownHashError: hash cou..
Fast API에서 비밀번호 해싱하기
·
💾 Backend/FastAPI
사수님의 제안으로, 지난 시간까지 나 혼자 풀스택으로 CRUD가 되는 게시판을 만들었다. 기능적인 부분을 우선적으로 생각해서 만들었는데, 이후에 내가 까먹고 구현하지 않은 필수 기능이 있다는걸 깨달았다.내가 쓴 글을 수정/삭제하려면 본인임을 인증할 수 있는 장치가 필요하다는 것!😅그래서 CRUD 기능이 완성된 게시판에 비밀번호 입력 기능을 추가했다. 비밀번호 기능을 추가한 후에, 몇 가지의 에러가 돌아가면서 발생하고 있어서 아직 끝나지 않았지만, 최초 글 생성 시에는 제대로 작동하고 있는걸 확인했기 때문에 기록해본다.✍※ CRUD가 되는 게시판 만들기, 백엔드 코드 설명 - https://hjinn0813.tistory.com/149 DB에 CRUD가 되는 게시판 만들기 - Backend나중에 풀스택으..
DB에 CRUD가 되는 게시판 만들기 - Backend
·
💾 Backend/FastAPI
나중에 풀스택으로 성장하고 싶다고 말했지만, 이렇게 빨리 백엔드를 배우게 될 줄은 몰랐다.😂아무튼 지난 시간까지 DB에 존재하는 데이터들로 API 만들어서 프론트엔드에서 사용하는걸 했으니까, 이번에는 한 단계 더 어려운 작업을 해봤다. 실제로 서버와 통신하면서 글 생성, 수정, 삭제 등 CRUD 작업이 되는 게시판 페이지 만들기.😎이번 글에서는 일단 백엔드 쪽에서 어떤 작업들을 했는지를 기록해보려 한다.✍데이터베이스 생성일단 게시판 메인 페이지에서 글 목록이 조회될 수 있도록 DB에 간단하게 게시글을 몇 개 넣어두었다. 그리고 프로배구팀 데이터로 실험할 때부터 같은 가상환경(fastapi/app)에서 작업하고 있어서, 이번 게시판 프로젝트 관련 파일들을 따로 저장하려고 app 하위에 board 디렉토..
MySQL 권한 에러, DB 이관하기
·
💾 Backend/DB, SQL
지난 시간까지 Fast API와 MariaDB를 연동시켜서 가상환경에서 MariaDB에 있는 데이터들을 API로 만드는 작업을 했다. 코드 작성과 이해를 끝내고 포트를 열어서 확인하는 절차만 남았는데, MySQL 권한이 없다는 이유로 500 Server Error가 발생했다. 이번 시간에는 이 에러를 해결하기 위해 고생한 이야기를 작성해보려 한다.✍※ Fast API와 MariaDB 연동하기 - https://hjinn0813.tistory.com/145 FastAPI와 MariaDB 연동하기DB화된 데이터를 FastAPI에 연동시켜서 API로 만들기hjinn0813.tistory.comMySQL 권한 에러 해결 시도솔직히 햇병아리 FE 개발자인 나는, 스스로가 직접 HeidiSQL에서 한땀 한땀 작성한..
FastAPI와 MariaDB 연동하기
·
💾 Backend/FastAPI
지난 시간까지 가상환경에 접속해서 JSON 데이터로 API 만들어보고, MariaDB랑 HeidiSQL 설치해서 JSON 데이터를 DB화하는 작업을 했었는데, 이번에는 DB화된 데이터를 FastAPI에 연동시켜서 API로 만드는 작업을 해보았다.😎나는 분명 햇병아리 FE 개발자인데, 이렇게 점점 풀스택이 되어가나보다..😂※ Fast API 가상환경 구축과 API 만들기 - https://hjinn0813.tistory.com/140※ MariaDB, HeidiSQL 설치하기 - https://hjinn0813.tistory.com/141 MariaDB, HeidiSQL 기본 개념과 설치 방법햇병아리 프론트엔드 개발자의 백엔드 도전은 API 만들기가 끝이 아니었다.hjinn0813.tistory.com..
SQL 기본 개념과 용어 정리
·
💾 Backend/DB, SQL
MariaDB과 HeidiSQL에 대해서는 정리했는데 SQL에 대해서는 정리하지 않았다는걸 지금 알았다.정보처리기사 공부하면서 이해하고 외웠던 내용이지만 지금은 전부 까먹은 관계로..😅자료들을 다시 꺼내서 복기하면서 SQL이 뭔지부터 가볍게 복기해본다.✍릴레이션의 개요 및 구조관계형 데이터베이스는 그를 구성하는 개체(Entity)나 관계(Relationship)를 모두 릴레이션(Relation)이라는 표(Table)로 표현한다. 여기서 '관계'란 서로 다른 테이블끼리 연결할 수 있는 방법이다. 예를 들어, "학생" 표와 "수업" 표가 있다면, 학생이 어떤 수업을 듣고 있는지 연결할 수 있다.릴레이션 (Relation, =테이블): 데이터를 표 형태로 표현한 것.릴레이션 스키마 (Schema): tabl..