Day13_MYSQL_ 사용자 추가하기, 권한 부여, 삭제
2023. 3. 21. 16:38ㆍSQL
1)사용자 추가하기
mysql command Line 에 root 계정으로 로그인
로컬에서 접속이 가능한 사용자 추가하기
create user '사용자명'@'localhost' identified by '사용자 비밀번호';
ex) 애플이란 사용자 추가하기
create user 'apple'@'localhost' identified by '1111';
2) 추가한 계정에 권한 부여하기
모든 DB에 접근이 가능하며 모든 권한을 가진 apple 사용자 만들기
grant all privileges on *.* to 'apple'@'localhost'l;
✔할당 권한 상세 옵션
all : 모든 권한
usage : 권한을 부여하지 않음
create,drop,alter : 테이블에 대한 생성 삭제 변경권한
select,insert,update,delete : 테이블의 조회 삽입 변경 삭제 권한
예시
grant select on 데이터베이스명.특정테이블명 to '사용자'@'localhost';
모든 IP 접근 허용
grant select on 데이터베이스명.특정테이블명 to '사용자'@'%';
특정 IP 접근 허용
grant select on 데이터베이스명.특정테이블명 to '사용자'@'특정 IP주소';
✔IP권한 상세 옵션
% : 모든 IP에서 접근이 가능
127.0.0.1 = localhost에서 접근이 가능
3) 사용자 계정 삭제하기
drop user '사용자명'@'localhost';
4)예시 및 연습
apple 데이터베이스에 kdt.member 테이블을 복사하고, 해당 테이블의 select 권한만 부여한 orange 계정 만들기
create table apple.member(select * from kdt.member);
create user 'orange'@'localhost' identified by '2222';
grant select on apple.* to 'orange'@'localhost';
해석
1번째 코드 : apple DB에 member라는 테이블 생성 (내용은 kdt DB에 member 테이블 모든 내용(*))
2번째 코드 : 아이디 : orange@localhost / PW: 2222 계정 생성
3번째 코드 : apple DB에 모든 테이블 접근이 가능하고, Select(조회)만 가능한 권한
5) 사용자 조회 및 제거
사용자 목록 조회
use mysql;
select user,host from user;
사용자 제거
drop user 계정명;
delete from user where user = 계정명;
사용자 권한 조회하기
show grants for '계정명'@'localhost';
show grants for 'apple'@'localhost';
show grants for 'orange'@'localhost';
사용자 권한 제거하기
revoke 권한명 privileges on 데이터베이스명.테이블명 from '계정명'@'localhost';
revoke all privileges on apple.* from 'apple'@'localhost';
728x90
'SQL' 카테고리의 다른 글
NoSQL 기초 (0) | 2023.05.09 |
---|---|
Day13_MYSQL_ INDEX (9) | 2023.03.21 |
Day13_MYSQL_ truncate 구문 (0) | 2023.03.21 |
Day13_MYSQL_ 트렌섹션(transaction) (0) | 2023.03.21 |
Day13_MYSQL_View (0) | 2023.03.21 |