Skip to content

MySql:User

Example

grant all privileges on `DB이름`.* to 사용자아이디@localhost identified by '비밀번호' with grant option;
계정 생성 및 권한 주기. 사용후 재로딩(flush privileges)해야 한다.
주의사항은 DB이름은 따옴표(')가 아닌, 억음 부호(`)로 입력해야 한다.
set password for '아이디'@'%' = password('패스워드');
set password를 사용한 MySQL 패스워드 변경.
'%'부분은 mysql DB의 user TABLE을 확인하여 변경할 Host를 정확히 입력해야 한다.
update user set password=PASSWORD('변경할비밀번호') where user = '사용자계정';
또는 이 방법으로 비밀번호를 변경한다.
mysqladmin -u아이디 -p기존패스워드 password 신규패스워드
mysqladmin 를 사용한 MySQL 패스워드 변경.
drop user 사용자아이디@localhost;
사용자 삭제.
update user set password=password('123456') where user='root';
특정 사용자(이 예제는 root 사용자)의 패스워드 설정. 사용후 재로딩(flush privileges)해야 한다. 1

권한 추가

모든 IP에 대한 권한을 추가하고 싶을 경우 아래와 같이 적용한다.

INSERT INTO mysql.user (host,user,password) VALUES ('%','root',password('패스워드'));
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;

특정 IP대역을 설정하고 싶을 경우 다음과 같이 설정하면 111.222로 시작하는 모든 IP가 허용된다.

INSERT INTO mysql.user (host,user,password) VALUES ('111.222.%','root',password('패스워드'));
GRANT ALL PRIVILEGES ON *.* TO 'root'@'111.222.%';
FLUSH PRIVILEGES;

특정 IP 1개 허용

INSERT INTO mysql.user (host,user,password) VALUES ('111.222.33.44','root',password('패스워드'));
GRANT ALL PRIVILEGES ON *.* TO 'root'@'111.222.33.44';
FLUSH PRIVILEGES;

모든 IP를 허용한 경우 다음과 같이 원래 상태로 복구할 수 있다.

DELETE FROM mysql.user WHERE Host='%' AND User='root';
FLUSH PRIVILEGES;

See also

Favorite site

References