RDBMS 2

항해 99 7주차를 끝내며

이번 7주차에서는 나만의 작은 사진 공유 사이트를 만들었다. Express.JS와 MySQL을 이용하여 백엔드 서버를 만들었다. MongoDB를 이용하기 위해 mongoose라는 ORM을 이용했다면, MySQL을 이용하기 위해서 Sequelize라는 ORM을 사용하였다. 또한, Docker를 사용하여 MySQL을 실행하였다. Docker에 대한 설명은 후술하겠지만, 가벼운 가상 머신을 떠올리면 이해가 빠를 것이다. MySQL workbench도 사용해본 적이 없는 입장에서 바로 docker를 활용한 MySQL과 Sequelize라는 생소한 ORM을 사용하는 것은 꽤나 힘든 일이었다. 관계 설정을 제대로 하는 방법을 몰라서 며칠을 끙끙대며 공식문서와 검색을 해야했고, 나중에 DataGrip을 이용하여 Ta..

항해 99 2022.02.28

항해 99 6주차를 끝내며

항해 99 6주차는 간단한 비 회원제 블로그의 게시글 및 댓글 CRUD 기능을 구현하였다. Node.js와 MongoDB를 이용하였는데, 라이브러리는 mongoose와 express를 이용하였다. 미들웨어와 라우터의 개념에 대해서 알게 되었고, mongoose 라이브러리를 통하면 model 객체를 상속하는 schema를 통해 마치 RDB를 이용하는 것처럼 각 collection의 형태를 조정할 수 있다는 것을 알게 되었다. DB는 보통 데이터를 저장하는 컴퓨터, 혹은 그 데이터의 저장과 사용을 도와주는 프로그램을 지칭한다. DB는 크게 SQL과 No SQL로 구분지을 수 있다. SQL DB는 관계형 데이터베이스라고도 하는데, My SQL과 Oracle DB로 대표된다. SQL DB에서는 모든 데이터를 2..

항해 99 2022.02.20