8/13/2019

스프링 게시판 만들기 #2. 깃허브 연동 및 데이터 베이스 준비

요즘은 자신이 제작한 프로젝트를 깃허브의 저장소에 업로드하고, 이 링크를 이력서에 적어두거나 포트폴리오로 사용하는 경우가 많이 보입니다.

단순히 이력서/포트폴리오를 위한것뿐만이 아니라, 갑작스럽게 파일이 삭제될 경우 손쉽게 복구할 수 있으며 나중에 다시 볼 수 있거나 다른 사람이 참고할 수 있는등 다양하게 사용할 수 있기 때문에, 진행하는 프로젝트는 가급적 깃허브같은 형상관리툴에 업로드하여 보관하는것을 추천합니다.

스프링 프로젝트를 깃허브와 연동 및 업로드하는 방법에 대해서는, 이 블로그의 스프링과 깃허브(GitHub) 연동에서 다루고 있으며, 이 게시물에서는 따로 설명하지 않겠습니다. 이 작업은 필수가 아닌 선택사항입니다.

깃허브와 연동하는 과정에서 프로젝트의 경로가 바뀔 수 있으나 이는 깃허브의 로컬 저장소를 위한 것이므로 특별히 문제될 사항은 아닙니다. 하지만 현재 진행중인 폴더를 그대로 유지하고 싶을 경우, 프로젝트 폴더 내에 새로운 빈 폴더를 생성하여 저장하시면 되겠습니다.

마리아 DB 설치가 완료된 상태에서 관리자 계정(root)으로 로그인을 합니다.

새로운 계정과 데이터 베이스를 생성하고 권한을 부여합니다.

# 계정 생성
create user 'kuzuro'@'localhost' identified by '1111';

# 데이터 베이스 생성
create database board;

# 데이터 베이스에 대한 권한 설정
grant all privileges on board.* to 'kuzuro'@'localhost';

계정명과 비밀번호, 데이터 베이스명은 제가 임의로 입력한것이며, 자유롭게 입력하셔도 무관합니다. 물론 이후 진행할 때 계정명과 비밀번호, 데이터 베이스명은 자신이 입력한걸 사용하셔야합니다.

여기서, '데이터 베이스'는 오라클의 '테이블 스페이스'처럼 테이블이 저장될 공간을 의마합니다.

commit을 하고 select명령을 이용해 계정이 생성되었는지 확인해봅니다.

commit;

select * from mysql.user;

새로 생성한 계정으로 로그인하기 위해, 상단 메뉴에서 파일 → 세션 관리자를 선택합니다.

신규 버튼을 클릭하여 신규 세션을 생성합니다.

새로 생성된 세션에 계정명과 비밀번호를 입력하고 저장 버튼을 클릭합니다.

새로 생성된 세션을 마우스 우클릭한 뒤 Rename를 선택합니다.

한눈에 알아볼 수 있도록, 이름을 board로 변경했습니다.

열기 버튼을 클릭하여 접속하면, 새로 만든 데이터 베이스가 보입니다.

현재 계정에서 데이터 베이스를 사용하기 위해 use 명령어를 사용합니다.

use board;

게시판을 위한 테이블을 생성합니다.

제가 만들 게시판은 제목, 내용, 작성자, 작성일이 필요하며 조회수도 필요합니다. 그리고 각 게시물들을 구분지어줄 고유번호가 필요합니다.

create table tbl_board(
  bno int not null auto_increment,
  title varchar(50) not null,
  content text not null,
  writer varchar(30) not null,
  regDate timestamp not null default now(),
  viewCnt int default 0,
  primary key(bno)
);

commit;

select * from tbl_board;

tbl_board 테이블의 컬럼의 역할은 아래와 같습니다.

bno : 각 게시물을 구분할 고유 번호
title : 게시물의 제목
content : 게시물 내용
writer : 작성자
regDate : 작성일
viewCnt : 조회수

나중에 게시물 추천이나 파일 업로드 등을 추가하겠지만, 지금은 게시판을 만들기 위한 기본적인 기능만 있으면 됩니다.

현재까지 작업한 프로젝트의 깃허브 링크

게시물 수정
  1. 정말 도움되는 글 감사합니다!

    답글삭제
  2. 항상 많이 도움받고 있습니다! 진짜 감사합니다!!

    답글삭제
  3. 처음 이글보고 MariaDBf를 알게됐어요! 차근차근 찾아보면서 공부하니깐 너무 재밌네요! 감사합니다!

    답글삭제
  4. 마지막 테이블 생성 시 에러나는데
    SQL 오류 1142 : CREATE command denied to user 'kuzuro'@'localhost' for table 'tbl_board' 해결이 안되네요
    본문 내용대로 틀린거 없이 따라하고 select까지 하면서 확인을 해봤네요.....

    답글삭제
    답글
    1. 안녕하세요? 방문해주셔서 감사합니다.

      테이블 생성할때 접속 정보가 틀리지 않았는지 확인해보셔야 할 것 같습니다.
      만약 저 테이블이 select가 된다면 테이블이 만들어진것이라 안만들어지는것입니다.

      삭제
  5. 감사합니다... 진짜 공부하는데 너무 도움되서 행복합니다.

    답글삭제
  6. 익명3/08/2023

    감사합니다 예전 글이라 셋팅하는 데에는 시간이 좀 걸렸지만 너무 도움이 됐어요

    답글삭제
  7. 감사합니다.

    답글삭제