Study/Linux
[Linux] MySQL/MariaDB 계정 생성 및 권한 부여하기
kwan97
2022. 11. 8. 17:34
1. 테스트 할 데이터베이스 생성하기
1) 현재 존재하는 데이터베이스들 조회하기
mysql> show databases;
2) 테스트에 사용할 데이터베이스 생성하기
-- mysql> create database [데이터베이스명];
mysql> create database testdb;
2. 테스트 할 사용자 계정 생성하기
1) 현재 등록되어 있는 사용자 계정 전체 조회하기
mysql> SELECT User, Host FROM mysql.user;
2) 사용자 계정 생성하기
mysql> CREATE USER '사용자 ID'@'%' IDENTIFIED BY '패스워드';
예시) mysql> CREATE USER 'testuser'@'%' IDENTIFIED BY 'testpwd';
명령어 중간에 들어 있는 **‘%’**를 보고 뜬금없다고 생각 할 수 있을 것 같아 설명을 덧붙여본다.
계정 생성 시 위 명령어처럼 **‘%’**를 붙여주면 모든 IP에서 접근이 가능하게 해주는 권한을 부여한다.
즉, 외부 시스템에서 접근이 가능 하게 해주는 것이라고 생각하면 된다. (Workbench에서 접근 가능)
3. 새로 생성된 계정에 권한 부여하기(두가지 방법)
- 특정 데이터베이스만 사용이 가능하도록 권한 부여하는 명령문
mysql> grant all privileges on testdb.*to'testuser'@'%';
- 모든 데이터베이스를 사용할 수 있는 권한 부여하는 명령문
mysql> grant all privileges on *.*to'testuser'@'%';
4. 권한 부여 후 적용해주는 명령문
mysql> flush privileges;
*사용자 계정 or 권한 삭제하기
>>계정 삭제하기
drop user '계정명'@'접속 위치';
ex ) drop user 'test@'localhost' / '%' / '[IP주소]';
>>권한 회수 및 삭제하기
revoke all on *.* from '계정명'@'접속 위치';
728x90