정보보안공부
DBMS_day09 본문
#PuTTY로 MySQL 접속
# MySQL 외부 접속 허용하기
1. mysql -u root -p
2. use mysql; ( mysql의 명령은 뒤에 세미콜론이 붙는다. )
-> Database changed : 정상적으로 작동이 되는 것을 알려준다.
3. grant all privileges on *.* to 'root'@'%' identified by 'mysql root password';
4. exit ( mysql 로그아웃 )
5. systemctl restart mysqld
# workbench 가동
# 서버실 mysql 사무실 workbench
# PuTTY로 사무실에서 접속
1. 방화벽 3306허용
2. MySQL 외부 접속 허용하기
# DBMS1 스냅샷
-> MySQL 외부 접속 허용
# MySQL 데이터 저장할 때 엑셀처럼
# 행(가로) -> 로우(MySQL)
# 열(세로) -> 컬럼(MySQL)
# MySQL에서 행과 열을 다포함한것을 table
# table은 여러개 있을 수 있다.
# table을 묶을 수 있다.
-> table을 묶어주는 단위 데이터 베이스 , 스키마 라고한다.
# 데이터베이스(스키마) 안에 테이블이 만들어지는 형태를 갖고 MySQL 운용되게 된다.
# 수많은 스키마, 수많은 table이 존재한다.
# table들을 묶는 것은 자유
-> 유사한 table끼리 묶는다.
예) 슈퍼마켓안에 고객 정보(table), 보유물품(table)
# 네이버에서 발생하는 데이터
-> 네이버 사이트하나에 스키마 하나사용
-> 일반적으로 사이트하나에 스키마 하나사용, 스키마 여러개 사용도 가능 (때에 따라 다르다.)
# 테이블을 만들때 기본키 지정
# 중복되면 안되는 경우 private로 기본키 지정
# 키본키 : 지정한 컬럼에 값이 중복되지 않게 설정할 때 사용된다.
# MySQL은 명령어라고 안 하고 명령어를 쿼리라고 한다.
# 쿼리를 SQL이라고 한다.
# MySQL에서 작성하는것은 SQL이다.
# SQL중에 show databases; 후 Ctrl + Enter
-> 현재 만들어져 있는 스키마의 목록을 보여달라는 SQL이다.
-> MySQL설정 관련된 스키마들이다. (3개, 건들지 않기권장)
# workbench에서 접속후 schemas목록(왼쪽)
-> 만들어져 있는 스키마의 목록
-> MySQL설정 관련된 스키마(3개)를 감춰놓는다.
# MySQL 운용되는 데 필요한 스키마들 3개가 Workbench에서는 감춰져서 안 보인다.
# 나중에 3개의 스키마들을 가지고 뭔가 작업을 처리해야 하는데, 그 때 안 보인다고
당황하지 않기
-> 눈에만 안보이고 만들어져 있다.
# workbench에 Query라는 창
-> 실수로 닫을경우 위에 맨왼쪽 +SQL누르기
-> +SQL File1 ( SQL 에디터라고 한다.) : SQL을 쓰는창
-> show databases;
# workbench에 SQL Additions 필요없다.
-> 위에 맨오른쪽 표시로 닫기
# SQL File 창에
-> show databases;
-> 번개모양 클릭
-> 만들어져있는 데이터 베이스 목록이 보인다.
# workbench 스키마부분 흰색부분에 마우스 우클릭
-> create 스키마
-> 이름 : test
-> 오른쪽 아래 Apply
-> test라는 데이터 베이스가 만들어진다.
-> 한번더 Apply
-> 문제가 생기면 apply눌렀을 때 빨간줄이 뜬다.
-> Finish로 완료
-> 스키마 목록에 test가 보인다.
-> 스키마 목록위에 화살표 클릭하면 스키마목록을 크게 키울 수 있다.
-> 스키마로 만든 test창 x
-> 아무 데이터가없는 빈 스키마가 만들어졌다.
-> 비어있는 스키마안에 table을 만든다.
-> 스키마 목록안에 test를 더블클릭
-> test안에 tables 마우스 우클릭 후 create table클릭
-> table 이름 : korea
-> colum 이름 : id
-> Datatype : colume마다 Datatype을 지정해야 한다.
# MySQL에서 colume 마다 각각 datatype을 지정해야 한다.
# datatype을 데이터 자료형이라고 한다.
-> datatype을 펼치면 자료형이 많다.
# 자료형 : 저장하는 데이터의 형태를 뜻 한다.
# 컴퓨터가 데이터를 저장하기 위해서는 반드시 저장하는 공간에 무슨 어떤 데이터가 저장되는 지를 결정해야한다.
# 무슨 데이터를 저장하느냐에 따라 저장하는 공간에 사이즈와 저장하는 공간에 데이터를 어떻게 표현할 지 표현 방식이 달라진다.
# 자료형
- int : 숫자
- char : 문자
# colume 이름 : id , datatype : char, pk 체크, nn 체크
# colume 이름 : age , datatype : char
# PK ( 기본키 ) : 중복방지
예) 아이디는 중복 안된다. 나이는 중복 된다.
# NN ( NOT NULL ) : NULL을 허용하지 않겠다.
-> NULL : 아무 값도 없는 것을 뜻 한다.
-> 값을 비워놓을 수 없다. ( 반드시 값을 입력해야 한다. )
# NN : 데이터값이 꼭 있어야하는 경우
# PK 설정을 할 필드는 반드시 NN 설정을 해야 한다.
# Apply Apply Finish
# korea table창 닫기
# 스키마 목록안에 test안에 korea 확인
# SQL 에디터에서 show databases; 후 Ctrl + Enter
# use test; 후 Ctrl + Enter
-> test라는 데이터 베이스를 선택하겠다.
# MySQL에서는 데이터베이스를 작업 할 때 데이터베이스 선택하고 작업한다.
# SQL 마다 출력 결과가 있는 것도 있고 없는 것도 있다.
-> show databases; 는 출력 결과가 있다.
-> use test; 는 출력 결과가 없다.
# 밑에 Output창으로 SQL 실행 결과 확인
-> 왼쪽에 초록불이면 성공
-> use aaa; ( 없는 aaa로 ) 후 Ctrl + Enter
-> aaa 실행 결과는 왼쪽에 빨간불 실패
# 다시 use test; 후 show tables;
-> 만들어져있는 거 확인
# show tables; 는 use로 선택되어 있는 데이터베이스에 만들어져 있는 테이블에 목록을 보여달라는 쿼리이다.
-> 선택 된것을 본다.
# use mysql;
# 스키마목록안에 test를 마우스 두번클릭한것은 use로 입력한 것과 같다.
-> test의 이름이 굵어진다.
# workbench에서 스키마에 이름을 더블클릭하면 해당 스키마를 use 쿼리로 선택한
것 처럼 선택을 할 수 있다.
# 또한 workbench에서 스키마 목록에 이름이 굵은 것을 보고 어떤 스키마가 선택 돼 있는 지 눈으로 식별 가능하다.
# 스키마목록에 korea우클릭 select row 클릭
-> 적혀있는거 지운다.
-> id라는 열 age라는 열이 만들어져 있는거 확인
-> 나중에 id와 age에 데이터 집어넣기
-> use test; 후
-> select * from korea;
-> korea우클릭 select row클릭한것과 같다.
# 내일은 use로 데이터베이스 선택하지 않고 작업하는 방법과 테이블에 데이터를 삽입하는 방법을 진행
-> 스키마 만들기 : test
-> 테이블 만들기 : test
-> 콜롬(열) : id (PK : 중복금지, NN : 비워있는칸 없다 )
-> 콜롬(열) : age
'데이터베이스' 카테고리의 다른 글
DBMS_day11 (0) | 2017.07.25 |
---|---|
DBMS_day10 (0) | 2017.07.24 |
DBMS_day08 (0) | 2017.07.20 |
DBMS_day07 (0) | 2017.07.19 |
DBMS_day06 (0) | 2017.07.18 |