본문 바로가기

프로그래밍 강의 메모/갖고노는 MySQL 데이터베이스 by 얄코

MySQL 더 깊이 알아가기 > 사용자와 권한 다루기

https://inf.run/JvXX

 

갖고노는 MySQL 데이터베이스 by 얄코 - 인프런 | 강의

비전공자도 이해할 수 있는 MySQL! 빠른 설명으로 필수개념만 훑은 뒤 사이트의 예제들과 함께 MySQL을 ‘갖고 놀면서’ 손으로 익힐 수 있도록 만든 강좌입니다., - 강의 소개 | 인프런...

www.inflearn.com

1. 사용자

-- mysql user 확인
USE mysql;
SELECT * FROM user;

사용자 생성

-- CREATE USER '사용자명'@'접속위치' IDENTIFIED BY '비밀번호';

-- CREATE USER 'user_1'@'localhost' IDENTIFIED BY 'abcdefg';
-- CREATE USER 'user_1'@'12.345.678.90' IDENTIFIED BY 'abcdefg';

-- 어떤 주소, 위치에서든 비밀번호만 제대로 입력하면 사용할 수 있는 user 생성
CREATE USER 'user_1'@'%' IDENTIFIED BY 'abcdefg';

사용자 삭제

DROP USER 'user_1'@'%';

 

 

2. 권한

-- 사용자에 권한 추가
-- SELECT의 권한을 준다.
GRANT SELECT ON mydatabase.businesses
TO 'user_1'@'%';

 

-- UPDATE, DELETE 권한을 준다.
GRANT UPDATE, DELETE ON mydatabase.businesses
TO 'user_1'@'%';

 

-- 사용자 권한 조회
SHOW GRANTS FOR 'user_1'@'%';

 

-- 사용자 권한 박탈
REVOKE DELETE ON mydatabase.businesses
FROM 'user_1'@'%';

 

-- 데이터베이스의 모든 권한 부여
GRANT ALL PRIVILEGES ON mydatabase.*
TO 'user_1'@'%';

 

-- 신입 직원이나 외부인에게 권한을 줄 때
-- user_2에게 business_view 뷰에 대한 SELETC 권한만 준다.
GRANT SELECT ON mydatabase.business_view
TO 'user_2'@'%';