Mysql 데이터 베이스 관리
*현재 데이터베이스 확인하기
: show databases;
데이터베이스 생성하기
: create database[또는 schema] testdb;
데이터베이스 한글 설정
: create database[또는 schema] testdb default character set uft8
데이터베이스 삭제
: drop database testdb;
*데이터베이스 사용자 추가하기
-DDL 명령어로 사용자 추가하기
mysql> create user 사용자id;
mysql> create user 사용자id@localhost identified by '비밀번호';
mysql> create user 'userid'@'%' identified by 'password'; <-%를 붙이게되면 모든사용자에게... 라는뜻!
-SQL 명령어로 사용자 추가하기
mysql> use mysql;
mysql> insert into user(Host, User, Password) values('localhost', 'userid', password('password'));
mysql> insert into user(Host, User, Password) values('%', 'userid', password('password'));
*데이터베이스 사용 권한 부여하기
-모든 권한 부여하기
mysql> grant all privileges on *.* to userid@host; #모든 DB의 모든 테이블
mysql> grant all privileges on dbname.* to userid@host; #DB의 모든 테이블
mysql> grant all privileges on dbname.* to userid@host identified by 'password'; #비번변경
mysql> grant all privileges on dbname.tablename to userid@'%' identified by 'password';
mysql> gran select, insert, update on dbname.* to userid@host identified by 'password';
mysql> flush privileges; #권한 변경을 적용
-권한 제거하기
mysql > revoke all on dbname.tablename from userid;
-계정 삭제하기
mysql> drop user userid@'%';
******테이블을 만들때, create문을 직접 작성하는것 보다, 모델링환경에서 생성하는것이 바람직하다(현업에서도)
******Mysql의 ReverseEngineer... 기능을 이용하여 테이블을 만드니, 훨씬 직관적이고 실수없이 편하게 만들어진다! 오라클에서 항상 쿼리문으로 작성하다가 리버스엔지니어링을 이용하여 테이블을 만드니 너무 편하다!