본문 바로가기

전체 글

블로그이전 https://softmoca.tistory.com/ 모카의 촉촉한 개발 로그 softmoca.tistory.com 해당 블로그는 위 블로그로 이전 했습니다 ~ 더보기
JSCODE 데이터베이스 회고 활동 내용 전체적으로 데이터베이스 전반적으로 중요한 개념에 대해 학습하며 블로그에 기록을 한뒤 운영자분이 주신 면접 예상 질문에 대해 생각하며 나만의 답변을 만든 뒤 모의 면접을 진행 하였다. 총 5 회중 4회는 독감으로 불참 하였고 5주차는 급하게 학교 팀프로젝트 2개 모두 일정 조정으로 인해 참석 하지 못하였따.. 특히 5주차의 인성 면접에 대한 다른 팀원분들의 답변이 너무 궁금하여 꼭 시간을 내어 참여 하고 싶었지만.. ㅠㅠ JSCODE 모의면접을 신청하고 시작하게된 계기 우선 처음 JSCODE 박재성님의 유튜브 커뮤니티를 통해 해당 CS 모의 면접 스터디를 알게 되었다. 이전에 NESTJS 백엔드 스터디를 진행 했을 떄 상당히 만족 했던 터라 'JSCODE박재성' 만 보고 기쁜 마음으로 커리큘럼.. 더보기
5주차 면접 예상질문 DB 세션에 대해서 설명해주세요. DB 세션은 데이터베이스와의 통신을 나타내는데, 일반적으로 어떤 응용 프로그램이 데이터베이스에 연결되어 작업할 때 해당 연결을 관리하고 유지하는 상태를 의미합니다. 세션은 사용자 또는 응용 프로그램이 데이터베이스와 상호 작용하는 동안의 활동을 추적하며, 세션 관리는 데이터베이스의 안정성과 효율성을 유지하는 데 중요한 역할을 합니다. Commit에 대해서 설명해주세요. 커밋은 데이터베이스 트랜잭션에서 변경된 내용을 영구적으로 적용하는 과정을 나타냅니다. 커밋이 수행되면, 트랜잭션에서 수행한 모든 작업이 데이터베이스에 반영되어, 해당 변경 내용이 영구적으로 저장됩니다. 커밋은 일련의 데이터베이스 작업을 원자성, 일관성, 고립성, 지속성(ACID) 속성을 유지하며 완료하는 중.. 더보기
5주차 : 트랜잭션, 회복 https://wikidocs.net/4096 COMMIT 모든 작업을 정상적으로 처리하겠다고 확정하는 명령어이다. 트랜젝션의 처리 과정을 데이터베이스에 반영하기 위해서, 변경된 내용을 모두 영구 저장한다. COMMIT 수행하면, 하나의 트랜젝션 과정을 종료하게 된다. TRANSACTION(INSERT, UPDATE, DELETE)작업 내용을 실제 DB에 저장한다. 모든 사용자가 변경한 데이터의 결과를 볼 수 있다. ROLLBACK 작업 중 문제가 발생했을 때, 트랜젝션의 처리 과정에서 발생한 변경 사항을 취소하고, 트랜젝션 과정을 종료시킨다. 트랜젝션으로 인한 하나의 묶음 처리가 시작되기 이전의 상태로 되돌린다. TRANSACTION(INSERT, UPDATE, DELETE)작업 내용을 취소한다. 이전.. 더보기
AWS 과금 메일을 확인하던 중 AWS 팀에서 보낸 보기 드문 제목의 메일을 확인해 보았다.서버 과금에 관한 내용이었고 AWS에 등록된 카드에 금액이 부족하다는 내용이었다.얼마나 나왔길래 카드에 있는 금액이 부족한거지 ..? 라는 생각으로 AWS의  과금 및 비용 관리 콘솔에 들어가본 결과...위와 같은 아찔한 금액그래프를 확인할 수 있었다..  우선 해킹과 외부 사용자의 남용이 의심되어 AWS에 문의를 하였고 팀원들에게 서버 주소를 블로그나 외부인에게 공유한 적이 있는지 확인하였다. 하지만 팀원들 모두 블로그와 같은 외부에 공유하거나 외부인에게 유출하지 않았다고 하였다. 급하게 회의를 가지며 팀원들과 문제의 원인을 찾아본 결과  홈페이지 렌더링시 게시물 컴포넌트 내부의 댓글 컴포넌트에서 재귀적인 api 호출 로직을.. 더보기
timezone 맞추기 데이터베이스에 UTC 시간 기준으로 저장이 되어 9시간이 빠르게 저장되며 형식이 일반 사용자가 보는 형식과 달라 한국시간으로 년월시분 까지만 보여주고자한다. 우선 현재 도커 컨테이너의 id를 확인한 후 mysql에 진입한다. 그후 현재의 timezone을 확인해보니 서울시의 시간 기준으로 나와있지 않음을 확인 timeZone을 변경하는 방법은 크게 2가지가 있다. 1. global time_zone을 변경. 2. .cnf 파일을 수정하는 방법이다. 우선 1번째 방법은이 가장 편하지만 세션 기준으로 변경이 되다 보니 서버가 재가동 되거나 다른 세션으로 접속시 설정이 적용이 안되는 이유가 있다. 그래서 우선 처음 2번째 방법으로 .cnf 파일을 수정해 보았다. 하지만 결국 적용이 되지 않아 첫번째 방법을 .. 더보기
게시판 스타일 수정 import Link from "next/link"; import { usePathname } from "next/navigation"; import React from "react"; export default function PostItem({ dpost }) { const dpostId = dpost.id; const boardNamePath = usePathname(); const boardId = boardNamePath.substring(1); return ( {dpost.postTitle} {dpost.postContent} {dpost.postLike !== 0 && ( // postLike이 0이 아닌 경우에만 렌더링 👍🏻 {dpost.postLike} )} {dpost.commentCo.. 더보기
4주차 면접예상 질문 이상 현상이 뭘까요? 일반적인 데이터 패턴에서 벗어나거나 예상치 못한 이벤트 또는 상태를 나타냅니다. 이상 현상은 데이터의 무결성이나 일관성에 영향을 미칠 수 있으며, 데이터베이스 설계에서 주의하여 방지해야 하며, 정규화와 같은 기술을 사용하여 데이터 일관성을 유지하고 데이터베이스의 효율성을 향상시킬 수 있습니다. 삽입 이상(Insertion Anomaly)에 대해서 설명해주세요. 데이터를 추가하려고 할 때 필수 정보가 부족하거나, 관련 정보가 없어서 데이터를 삽입할 수 없는 상황을 의미합니다. 갱신 이상(Update Anomaly)에 대해서 설명해주세요. 데이터를 업데이트할 때 중복된 정보로 인해 데이터 일관성이 깨지는 상황을 의미합니다. 예를 들어, 동일한 정보가 여러 행에 중복되어 있을 때 그 정보.. 더보기