컴공생의 다이어리

[MySQL] 사용자(user) 조회, 생성, 제거, 권한 부여 본문

Development/Database & SQL

[MySQL] 사용자(user) 조회, 생성, 제거, 권한 부여

컴공 K 2022. 2. 20. 00:01

[MySQL] 사용자(user) 조회

MySQL의 사용자 목록을 조회하기 위해서 MySQL의 기본 스키마인 mysql안에 user 테이블에서 아래와 같은 명령어를 통해 조회할 수 있다.

use mysql;	# mysql 스키마 선택

select user, host from user;	# 사용자 목록 조회

 

 

 

사용자 생성

사용자 생성시에는 create 명령어를 사용해서 사용자를 추가할 수 있다. 경우에 맞게 example을 참고해서 사용하면 될 것 같다. 나의 경우 내부 접근만 가능하도록 만들기 위해 ex1 명령어를 활용했다.

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';

 

 

 

사용자 제거

아래 drop 혹은 delete 명령어를 통해 사용자를 삭제할 수 있다.

drop user '사용자';
# or
delete from user where user='사용자';


# example
drop user 'test'@'localhost';

 

 

 

사용자 권한 부여

사용자에게 권한을 줄 때는 grant명령어를 통해 권한을 줄 수 있다. 아래 명령어들을 참고하면 좋을 것 같다.

# 모든 데이터베이스의 모든 테이블에 모든 권한을 줌
grant all privileges on *.* to '사용자'@'localhost';

# 특정 데이터베이스의 모든 테이블에 모든 권한을 줌
grant all privileges on DB이름.* to '사용자'@'localhost';

# 특정 데이터베이스의 특정 테이블에 모든 권한을 줌
grant all privileges on DB이름.테이블명 to '사용자'@'localhost';

# 특정 데이터베이스의 특정 테이블에 select 권한을 줌
grant select on DB이름.테이블명 to '사용자'@'localhost';

# 특정 데이터베이스의 특정 테이블에 select, insert 권한을 줌
grant select, insert on DB이름.테이블명 to '사용자'@'localhost';

# 특정 데이터베이스의 특정 테이블의 컬럼1과 컬럼2의 update 권한을 줌
grant update(컬럼1, 컬럼2) on DB이름.테이블명 to '사용자'@'localhost';

 

 

 

 

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

아래 명령어를 사용하면 사용사 생성과 동시에 권한 부여를 한번에 할 수 있다.

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

# example
grant all privileges on *.* to 'test'@'localhost' identified by '0000';

 

 

 

권한 반영

변경한 권한을 즉시 반영시켜주려면 아래 명령어를 실행시켜주면 된다.

FLUSH PRIVILEGES;

 

 

 

 

 

https://ssungkang.tistory.com/entry/MySQL-%EC%82%AC%EC%9A%A9%EC%9E%90-%EB%AA%A9%EB%A1%9D-%EC%B6%94%EA%B0%80-%EC%A0%9C%EA%B1%B0-%EB%B0%8F-%EA%B6%8C%ED%95%9C-%EB%B6%80%EC%97%AC-%EC%A0%9C%EA%B1%B0

 

[MySQL] 사용자 목록, 추가, 제거 및 권한 부여, 제거

db를 사용하면 사용자를 생성하고 각 사용자에 맞게 권한을 부여하는 것이 중요합니다. 권한은 단순히 스키마, 테이블에 대한 권한 부터 여러 기능에 대한 권한까지 다양하게 부여할 수 있습니

ssungkang.tistory.com

https://sleepyeyes.tistory.com/32

 

[MySQL] 사용자 추가, 삭제, 권한 부여

접속하기 $ mysql -u root -p 먼저 root 계정으로 접속한다. 사용자 확인하기 mysql> use mysql; mysql> select host,user from user; 사용자 추가하기 mysql> create user '사용자'@'localhost(또는 %)' identif..

sleepyeyes.tistory.com

http://cadmin80.blogspot.com/2017/09/db-mysql-user.html

 

[DB] MySQL 사용자(USER) 생성,삭제,권한부여 하기

MS SQL은 DB별로 USER 생성 사용 했는데 AWS RDS MySQL은 루트계정(최상위계정)으로만 사용을 해서 잊고 있다가 DB별로 USER 사용하는 MySQL에 잠깐 당황을 해서 (루트계정으로 실행되는 명령어가 안되어서

cadmin80.blogspot.com

https://kig6022.tistory.com/14

 

[MySQL] 사용자 추가, 권한 부여하기, 원격접속 허용 설정하기

MySQL에서 사용자를 추가하고 권한을 부여하는 방법을 알아보자. Linux에서 MySQL에 접속하기 위해서는 사용자 계정을 생성하고, 권한을 부여한 후 사용하는것을 권장하고있다. 일반적으로 root는 loc

kig6022.tistory.com

 

728x90
반응형

'Development > Database & SQL' 카테고리의 다른 글

[MySQL] FIELD 함수  (0) 2022.05.30
[MySQL] NULL 처리 - IFNULL  (0) 2022.03.12
DBeaver(디비버) DB연결  (0) 2022.02.13
DBeaver(디비버) - 설명, 설치  (0) 2022.02.12
3단계 데이터베이스 구조  (1) 2022.02.08
Comments