접속하기

 

$ mysql -u root -p

 

먼저 root 계정으로 접속한다.

 

 

 

사용자 확인하기

 

mysql> use mysql;

 

mysql> select host,user from user;

 

 

 

 

사용자 추가하기

 

mysql> create user '사용자'@'localhost(또는 %)' identified by '비밀번호';

 

%는 외부에서의 접근을 허용한다

 

 

 

사용자 삭제하기

 

mysql> drop user '사용자'@'localhost';

 

 

 

 

사용자에게 데이터베이스 권한 부여

 

mysql> grant all privileges on *.* to '사용자'@'localhost';

 

mysql> grant all privileges on DB이름.* to '사용자'@'localhost';

 

mysql> grant all privileges on DB이름.테이블명 to '사용자'@'localhost';

 

mysql> grant select on DB이름.테이블명 to '사용자'@'localhost';

 

mysql> grant update(컬럼1, 컬럼2) on DB이름.테이블명 to '사용자'@'localhost';

 

이렇게 특정 데이터베이스의 권한을 줄 수도 

특정 권한 ex) select 권한만 줄 수도

특정 컬럼에만 update의 권한을 줄 수도 있다.

 

all privieges 는 모든 권한을 

*.*은 모든 데이터베이스의 모든 테이블을 뜻한다.

 

@뒤에 특정 ip를 설정 할 수 있다.

특정 ip : @'192.168.1.18'

특정 ip 대역대 : @'192.168.1.%'

전체 : @'%'

 

 

사용자 생성, 권한 부여 한번에 하기

 

mysql> grant all privileges on *.* to '사용자'@'localhost' identified by '비밀번호';

 

이렇게 한번에 사용자 생성과 권한 부여를 할 수 있다.

 

 

사용자 권한 삭제하기

 

mysql> revoke all on DB이름.* from '사용자'@'localhost';

 

권한 부여와 구조가 같다. 

마찬가지로 응용해서 특정한 조건을 줄 수 있다.

 

 

변경사항 반영하기

mysql> flush privileges;

 

사용자 권한 확인하기

 

mysql> show grants for '사용자명'@'localhost';

 

 

 

+ Recent posts