MySQL에서 localhost와 socket file! 데이터베이스 에러 프로그램을 만들 때 데이터베이스가 가장 말썽인 것 같다. 설계, 에러 등에서 시간을 많이 쓰게 된다. cloer chat프로젝트 중 잘 작동하다가 에러가 발생했다. Error: connect ECONNREFUSED ::1:3306 데이터베이스에 연결이 안되는 에러인데 간단한 실수부터 방법으로 발생하는 에러다. 단순 실수로 발생한 에러가 아니고 몰랐던 부분이어서 정리하려 한다. 내 경우 MySQL 공식문서에서 답을 찾았다. https://dev.mysql.com/doc/refman/8.0/en/can-not-connect-to-server.html MySQL에서 localhost localhost는 루프백 호스팅으로 본인의 컴퓨터..
데이터베이스
데이터베이스 구조부터 잡고 sequelize와 MySQL query를 이용해 스키마를 생성해보자! 데이터베이스 저는 서비스를 만들 때 기능들을 구상하고 인터페이스를 대충 생각 해보고 데이터 베이스를 설계하는 편입니다. 기능 구상은 저번 포스트에서 했고 인터페이스는 크게 신경 쓰지 않을 계획이니 바로 데이터베이스를 설계해 보겠습니다. 우선 채팅 서비스에 필요한 데이터부터 생각해보면 유저, 대화방, 메시지 정도가 있습니다. 모든 테이블에 createdAt, updateAt, deletedAt을 추가 해 시간을 이용해 대화방에서 나갔다가 다시 접속했을 때 나가기 전 메시지를 불러오지 않을 계획입니다. 대충 컬럼을 생각해봤으니 관계를 맺고 정규화를 통해 나은 방법을 찾아보겠습니다. pseudo ERD '메시..
당근마켓의 데이터베이스를 클론해보자! 당근마켓 DB 설계 공간데이터를 많이 다루는 과 특성상 빅데이터를 많이 다루기는 하지만 그런 데이터들은 실제 서비스에서처럼 많은 관계를 갖고있지는 않다. 따라서 관계형 데이터베이스를 이해하고 실습하기위해 당근마켓의 데이터베이스를 클론해보자. 대상을 당근마켓으로 정한 이유는 플렛폼 어플리케이션에서 사용하는 기능이 대부분 들어있기 때문이다. 채팅은 socket을 사용하겠지만 DB 공부가 목적이니 데이터베이스로 구현했다. 당근마켓 클론의 전체적인 진행 상황이 궁금하시다면 이 글에서 확인 하실 수 있습니다! ERD 학교에서는 ER win을 사용했었다. 이번에는 Quick DBD라는 툴을 사용했 것이다. + 수정 (2021.10.05) 수정사항 (1) 주소 원래는 User 에..