본문 바로가기
호구지책/DB

[MySQL] 권한 부여 하기

by 하늘의흐름 2016. 3. 8.
반응형

APMSetup을 기준으로 설명하면

하단 오른쪽에 APMSetup 아이콘을 우클릭한다.

mysql 콘솔을 선택한다.


그럼 도스창이 나오는데, 먼저 암호를 입력해야 한다.

(기본 암호는 apmsetup이다.)


로그인에 성공했으면

다음을 입력해서

현재 상황을 체크한다.



use mysql;
select host, user, password from user;

이것을 입력하면 현재 mysql에 생성되어 있는 계정들과
각 계정에 허용되어 있는 ip가 표시된다.
localhost는 자기 컴퓨터를, 특정 아이피가 적혀있다면
해당 아이피에서만 접근이 가능한 것이며,
% 라면 모든 아이피를 허용하는 것인데, 보안상 굉장히 안 좋은 방법이므로
특정 ip에서만 허용될 수 있도록 권한을 바꾸길 권한다.

이미 있는 계정에 추가로 ip를 허용할 경우 다음과 같이 입력한다.


create user 'userid'@'ip' identified by 'password';

userid에는 권한을 부여할 아이디를, ip에는 허용할 아이피를 넣어준다.
마지막으로 password에는 암호를 넣어주면 된다.

Query OK, 0 rows affected 라고 나오면 제대로 된 것이다.

flush privileges;

마지막으로 위처럼 메모리에 반영하는 명령을 실행하여 권한을 적용한다.

하지만 그래도 권한문제가 발생할 때는
 
grant all privileges on *.* to 'userid'@'localhost' identified by 'password';
flush privileges; 
 
다음처럼 직접 접근권한을 부여한다. *.* 는 모든 DB의 모든 테이블을 의미한다. 
실전에서 이렇게 사용하면 보안에 심각한 문제가 발생할 수 있으니
특정 DB이름을 적어서 부여하길 권장한다.


반응형

댓글