1. 설치 및 연결(MySQL Workbench 사용)
설치방법은 많지만 저는 docker-compose 를 사용하여 설치하는 방법을 간단히 소개하려 합니다.
설치 방법은 이미 많이 나와있어 더이상 상세하게 설명을 안하겠습니다.
설치방법
docker-compose 파일에 아래 코드를 입력하고 docker-compose up -d
명령어를 입력하면 OK!
# docker-compose.yml
version: '3'
services:
# mysql 설정
db:
image: mysql:latest
restart: always
ports:
- "13306:3306"
environment:
MYSQL_ROOT_PASSWORD: "root비밀번호"
# MYSQL_DATABASE: "blog(db명)"
# MYSQL_USER: "사용자아이디"
# MYSQL_PASSWORD: "사용자 비밀번호"
volumes:
- ./db:/var/lib/mysql
container_name: myblog-db
MySQL Workbench 프로그램을 사용하여 연결
phpmyadmin, Sequel Pro, DataGrip, Navicat 등등 많지만
저는 무료이기도 하고 MySQL 공식사이트에서 추천하는 MySQL Workbench(다운주소) 를 사용합니다.
사용방법
MySQL Workbench 툴 화면
연결관리
2. 데이터베이스 본격적으로 다루기
데이터베이스 관리의 기본인 생성 및 추가 삭제, 조회, 수정에 대해
데이터베이스 생성하기
데이터베이스(예: blog_db)를 생성한다.
데이터베이스 생성
TABLE 만들기
유저관리
id | username | password | realname |
---|---|---|---|
1 | gildong | 123456 | 홍길동 |
2 | sunshin | 123456 | 이순신 |
컨텐츠 문장관리
id | title | content | createtime | author |
---|---|---|---|---|
1 | 제목1번입니다. | 1번 내용입니다. | 1562056482636 | gildong |
1 | 제목2번입니다. | 2번 내용입니다. | 1562056530503 | sunshin |
유저 Table 만들기
Column | Datatye | PK 기본키 | NN Not Null | AI 자동증가 | Default |
---|---|---|---|---|---|
id | int | Y | Y | Y | |
username | varchar(20) | Y | |||
password | varchar(20) | Y | |||
realname | varchar(10) | Y |
컨텐츠 Table 만들기
Column | Datatye | PK 기본키 | NN | AI 자동증가 | Default |
---|---|---|---|---|---|
id | int | Y | Y | Y | |
title | varchar(50) | Y | |||
content | longtext | Y | |||
createtime | bigint(20) | Y | 0 | ||
author | varchar(20) | Y |
TABLE 관리하기
- 추가, 삭제, 수정, 조회
- SQL 문법사용
시작
-- 시작
use blog_db;
여기서
blog_db
는 생성한 데이터베이스 이름입니다.
추가
-- 데이터베이스 보기
show tables;
-- 데이터베이스 추가
insert into users (username,`password`,realname) values ('gildong','123456','홍길동');
insert into users (username,`password`,realname) values ('sunshin','123456','이순신');
주의: passwod는 ``(키보드 1번 왼쪽키)로 감싸준다.
블로그 데이터추가
-- Content 추가
insert into blogs (title, content, createtime, author) values ('제목1번입니다.', '1번 내용입니다.',1562056482636, 'gildong');
-- 업로드시간 역순으로 조회
select * from blogs where title like '%제목%' order by createtime desc;
삭제
delete from users where username='sunshin';
delete 사용하면 복구불가 입니다. 업무에서는 이방법을 추천안하고 update를 사용하여 공개/비공개 방식을 추천합니다.
수정
-- update
update users set realname='sunshin22' where username='이순신';
조회
-- 기본조회 (테이터가 많을 시 *기호(전체조회) 사용 비추천)
select * from users;
-- 부분조회
select id, username from users;
-- 선택조회
select * from users where username='gildong' or `password`='123456';
select * from users where `password` like '%1%';
-- 정열 (desc를 추가하면 역순)
select * from users where password like '%1%' order by id desc;
데이터양이 많을 경우 별표(*)보다 부분조회로 원하는 데이터를 검색하기를 추천드립니다.
기타(버전보기)
select version();
3. 终
- 데이터베이스 추가 및 TABLE 생성
- 테이블추가 시 자주 사용하는 유형 (int、bigint、varchar、longtext)
- SQL명령어 사용하여 추가, 삭제, 수정 및 조회
'Blog' 카테고리의 다른 글
나만의 홈페이지 만들기(GitPage) (0) | 2018.09.07 |
---|