MySQL 설치
- https://dev.mysql.com/downloads/mysql/ 에서
실행파일 다운로드 후 설치한다.
MySQL 사용
- MySQL Command Line Clinet 사용
- MySQL Workbench 사용
Database(DB)란?
- 여러 사람이 공유하여 사용할 목적으로 체계화해 통홥, 관리하는 데이터의 집합체
DBMS(Database Management System)란?
- 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고 데이터베이스를 관리해주는 소프트웨어
- 예) MySQL, MongoDB 등
관계형 데이터베이스(RDB:Relational Database)란?
- 서로 간에 관계가 있는 데이터 테이블들을 모아둔 데이터 저장공간
SQL(Structured Query Language)란?
- 데이터베이스에서 데이터를 정의, 조작, 제어하기 위해 사용하는 언어
SQL 구성
- 데이터 정의 언어 (DDL:Data Definition Language)
- CREATE, AlTER, DROP 등의 명령어- 데이터 조작 언어 (DML:Data Manipulation Language)
- INSERT, UPDATE, DELETE, SELECT 등의 명령어- 데이터 제어 언어 (DCL:Data Control Language)
- GRANT, REVOKE, COMMIT, ROLLBACK 등의 명령어
- Database 확인
- Database 목록 확인show databases;
- Database 생성
- Database 이름을 지정하여 생성create database dbname;
- Database 사용
- 해당 데이터 베이스로 이동(사용)use dbname;
- Database 삭제
- Database 삭제drop database dbname;
- User 조회
- 사용자 정보는 mysql에서 관리하므로 일단 mysql 데이터베이스로 이동 후 조회use mysql; select host, user from user;
- User 생성
- (localhost, 내부) 현재 PC에서만 접속 가능한 사용자를 비밀번호와 함께 생성- (%, 외부) 외부에서 접속 가능한 사용자를 비밀번호와 함께 생성create user 'username'@'localhost' identified by 'password';
** host 정보가 다른 경우 계정 정보가 동일해도 무관함.create user 'username'@'%' identified by 'password';
- User 삭제
- 접근 범위에 따라 같은 이름의 사용자여도 별도로 삭제drop user 'username'@'localhost'; drop user 'username'@'%';
- User 권한 확인
- 사용자에게 부여된 모든 권한 목록을 확인show grants for 'username'@'localhost';
- User 권한 부여
- 사용자에게 특정 데이터베이스의 모든 권한을 부여** 참고 - 수정 내용이 적용되지 않은 경우 새로고침grant all on dbname.* to 'username'@'localhost';
flush privileges;
- User 권한 제거
- 사용자에게 특정 데이터베이스의 모든 권한을 삭제revoke all on dbname.* from 'username'@'localhost';