| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 
| 9 | 10 | 11 | 12 | 13 | 14 | 15 | 
| 16 | 17 | 18 | 19 | 20 | 21 | 22 | 
| 23 | 24 | 25 | 26 | 27 | 28 | 29 | 
| 30 | 
- mysql
- mongoose
- 생각일기
- array
- 코테
- til
- 피드백
- 네트워크
- Java
- next.js
- mongo
- 생각정리
- Git
- MongoDB
- typescript
- Grafana
- 생각로그
- react
- 기록
- CS
- 자바스크립트
- js
- 주간회고
- nest.js
- 회고
- 트러블슈팅
- javascript
- 알고리즘
- WIL
- 리눅스
- Today
- Total
코딩일상
[Mysql] 유저 정보 조회,권한 수정, 권한부여, 권한 삭제, 유저삭제 본문

사용자 조회
모든 사용자 조회
SELECT User, Host FROM mysql.user;
사용자 권한 확인
SHOW GRANTS FOR 'username'@'host';
사용자 생성
create user '사용자'@'host' identified by '비밀번호';
ex1) 내부 접근을 허용하는 사용자 추가
create user 'test'@'localhost' identified by '0000';
ex2) 외부 접근을 허용하는 사용자 추가
create user 'test'@'%' identified by '0000';
ex3) 특정 ip만 접근을 허용하는 사용자 추가
create user 'test'@'123.456.789.100' identified by '0000';
ex4) 특정 ip 대역을 허용하는 사용자 추가
create user 'test'@'192.168.%' identified by '0000';
*주의
HOST 레벨과 접근 하고자 하는 DB의 접근 레벨을 동일 레벨 이상으로 맞춰서 적용을 하여야한다.
ex) 외부에 있는 DB 서버라면 외부 접근 레벨로 적용해야한다.(내아이피주소 참조)
권한부여
GRANT privileges ON database.* TO 'username'@'host';
특정 권한만 부여
GRANT SELECT, INSERT, UPDATE ON mydatabase.* TO 'newuser'@'localhost';
모든 데이터베이스에 대한 권한 부여
GRANT privileges ON *.* TO 'username'@'host';
권한 철회
특정 권한 철회
REVOKE privileges ON database.* FROM 'username'@'host';
REVOKE SELECT, INSERT ON mydatabase.* FROM 'newuser'@'localhost';
모든 권한 철회
REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'username'@'host';
REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'newuser'@'localhost';
권한 적용
FLUSH PRIVILEGES;
사용자 삭제
DROP USER 'username'@'host';
 다중 사용자 삭제 
DROP USER 'user1'@'localhost', 'user2'@'localhost', 'user3'@'%';