myCalendar 개발일지

HappyDay·2023년 7월 20일

myCalendar

목록 보기
5/7

myCalendar 프로젝트

데이터베이스 선정과 세팅

오늘은 myCalendar 프로젝트의 핵심인 데이터베이스 선정과 세팅에 집중하였습니다. 기능 개발 전에 데이터베이스를 선정하고 테이블 구조를 잘 설계하는 것은 프로젝트의 효율성과 성능에 큰 영향을 미치기 때문에 우선적으로 이 과정을 수행하였습니다.

NoSQL과 SQL의 간단한 비교

NoSQL과 SQL은 데이터베이스 관리 시스템의 두 가지 주요 범주입니다. 간단하게 비교하자면 다음과 같습니다:

NoSQL (Non-SQL, Not Only SQL):

  • 비관계형 데이터베이스로, 테이블이나 스키마 없이 유연한 데이터 모델을 사용합니다.
  • 데이터간의 관계를 정의하지 않아 매우 빠르게 읽고 쓸 수 있습니다.
  • 대용량의 데이터를 처리하거나 확장성이 필요한 경우에 적합합니다.
  • MongoDB, Cassandra, Redis 등이 대표적인 NoSQL 데이터베이스입니다.

SQL (Structured Query Language):

  • 관계형 데이터베이스로, 테이블 간의 관계를 정의하고 정해진 스키마를 따릅니다.
  • 데이터 일관성과 무결성을 보장하며 복잡한 쿼리를 지원합니다.
  • 데이터를 정형화하고 트랜잭션을 지원하므로 안정적인 데이터 처리가 가능합니다.
  • MySQL, PostgreSQL, SQLite 등이 대표적인 SQL 데이터베이스입니다.

SQL (MySQL) 선택 이유

myCalendar 프로젝트에서 SQL 데이터베이스인 MySQL을 선택한 이유는 크게 두 가지입니다.

  1. 학습 목적: 이전에 NoSQL 데이터베이스를 사용한 경험이 있었기 때문에 새로운 경험을 얻기 위해 SQL 데이터베이스를 선택하였습니다. SQL 데이터베이스는 정형화된 데이터 모델과 트랜잭션 처리를 통해 데이터의 일관성과 무결성을 보장해주는데, 이러한 특성을 학습하고 활용하는 것이 저에게 중요하다고 생각합니다.

  2. 프로젝트 요구사항: myCalendar 프로젝트는 사용자들의 일정 관리와 데이터의 정확성이 중요합니다. 사용자가 입력한 일정 정보가 올바르게 관리되고 트랜잭션 처리가 되어야만 정확한 서비스를 제공할 수 있기 때문에, SQL 데이터베이스가 더욱 적합하다고 판단하였습니다.

Window 환경에서 MySQL 개발환경 세팅 순서

MySQL 개발 환경을 Windows에서 세팅하는 간단한 순서는 다음과 같습니다.

  1. MySQL 설치: MySQL 공식 웹사이트에서 다운로드하여 설치합니다.

  2. 환경 변수 설정: 설치된 MySQL 디렉토리를 환경 변수에 등록하여 커맨드 라인에서 MySQL 명령어를 사용할 수 있도록 합니다.

  3. MySQL 서버 실행: 설치된 MySQL 서버를 실행합니다. 커맨드 라인이나 MySQL Workbench 등을 사용하여 접속합니다.

  4. 사용자 계정 생성: 프로젝트에서 사용할 새로운 사용자 계정을 생성하고 권한을 부여합니다.

  5. 데이터베이스 생성: 필요한 데이터베이스를 생성하고 테이블을 정의합니다.

  6. Spring Boot 연결 설정: 프로젝트의 Spring Boot 애플리케이션에서 MySQL 데이터베이스에 연결하기 위한 설정을 추가합니다.

다음 일차 계획

다음 일차에서는 Spring Boot 개발을 잠시 멈추고, DB 테이블 정의서를 작성할 예정입니다. 전체적인 기능 정의와 테이블 구조를 재정리하고, 데이터베이스 정규화를 진행하여 데이터 일관성과 효율성을 더욱 높이기 위해 노력할 것입니다. 그 후에 Spring Boot와 MySQL을 연결하여 회원가입 기능과 로그인 기능을 구현할 준비를 할 것입니다.

DB 테이블 정의서 작성을 통해 프로젝트의 구조와 기능을 더욱 명확히 정리하고 개발을 진행할 방향성을 확실하게 제시하겠습니다. 지속적인 발전을 위해 노력하는 myCalendar 프로젝트에 감사드립니다!

profile
노력하는 달팽이

0개의 댓글