데이터베이스 수업을 들은지 두 학기가 지났기 때문에 많은 부분을 잊어버릴 것 같아 그 전에 정리를 한번 하려고 합니다.
수업 PPT를 정리하는 포스팅을 쓸까하다가 MySQL부분에 대해서 강의를 더 듣고 싶기도 해서 강의를 찾아서 들었습니다!
1. 먼저 생활코딩의 MySQL 강의를 완강하였습니다
https://www.youtube.com/watch?v=h_XDmyz--0w&list=PLuHgQVnccGMCgrP_9HL3dAcvdt8qOZxjW
2. 다음 링크의 블로그 강의를 완강하였습니다
https://stricky.tistory.com/category/Database/sql%20%EA%B0%95%EC%9D%98
블로그 강의는 총 25편으로 구성되어있으며, 생활코딩으로 가벼운 틀을 잡고 자세한 내용과 예시를 블로그 강의로 정독하면 좋습니다.
두개의 방법 다 실제 MySQL을 활용하면서 예시들을 연습하기도 좋습니다. 포스팅은 두개의 강의를 요약하는 글입니다.
SQL(Structured Query Language)이란 데이터베이스의 언어입니다. 관계형 데이터베이스에서 데이터를 조작하고 쿼리하는 표준 언어 입니다.
관계형 데이터베이스를 이용하면 데이터를 표의 형태로 정리정돈할 수 있고, 검색/정렬과 같은 작업을 빠르고 편리하고 안전하게 할 수 있습니다.
MySQL, Oracle, MySQL Server, PostgreSQL, DB2, access와 같은 제품들은 관계형 데이터베이스라는 이론적 토대 위에서 만들어진 기술들입니다.
따라서 이 중에 하나를 배우면 나머지의 사용법은 거의 비슷하기 때문에 하나의 데이터베이스를 골라 공부하시면 됩니다. 그중에서 오픈소스였던 MySQL은 수많은 엔지니어들의 선택을 받게되었습니다.
데이터베이스의 구성은 데이터를 기록하는 최종적인 곳인 표(table), 다양한 종류의 표들을 연관된 표들끼리 그룹핑하여 폴더로 정리정돈하는 데이터베이스(database), 다른말로 스키마(schema), 스키마들이 저장되는 데이터베이스 서버(database server)로 이루어져 있습니다. MySQL을 설치한 것은 데이터베이스 서버를 설치한 것입니다.
데이터베이스를 얻을 수 있는 효용 중 하나는 보안입니다. 파일은 운영체제만 뚫리면 그만이지만, 데이터베이스는 자체 보안 체제를 가지고 있기 때문에 보다 안전하게 보관할 수 있습니다. 또한, 권한기능이 있기 때문에, 필요한 사람을 등록하여 데이터베이스의 테이블과 스키마에 대하여 각각 읽기, 쓰기 등의 차등적인 권한을 부여해줄 수 있습니다.
./mysql -uroot -p
루트(관리자 권한)라는 사용자로 접속하기 위한 명령입니다. 중요한 시스템이라면 별도의 사용자를 만들어서 사용자로 접속하여 관리하는 것이 좋습니다. -p는 비밀번호를 물어봅니다.
이방법으로 접속하면 '데이터베이스 서버'의 담장을 넘어서 데이터베이스(스키마)를 만날 수 있는 것입니다.
이제 데이터베이스(스키마)를 만들고, 사용하고, 삭제할 수 있습니다.
CREATE DATABASE 데이터베이스명;
만들기
DROP DATABASE 데이터베이스명;
삭제하기
SHOW DATABASES;
데이터베이스 리스트 확인하기
USE 데이터베이스명;
데이터베이스 사용하기