🩷02_DataBase/01_SQL( Structured Query Language)
#mysql #계정생성 #권한부여 #root #권한즉시부여 #FLUSH PRIVILEGES
roomname-dev
2024. 5. 22. 10:53
728x90
👊 Mysql 계정 생성 & 권한 부여 알아보기
DBMS설치시 생성되는 최고 관리자 root계정
- DB모든 권한 생성
- 사용자들에게는 root를 통한 테이블 권한, DB권한, dml에 대한 적절한 권한 부여를 통한 계정 생성
후 계정 전달 사용
root계정은 DB의 모든 권한이 존재함에 따라 어플리케이션에서 직접 사용 불가 형태로 구성 필요
👊 DB접속을 통한 계정 조회
🌱 mysql root 권한 접속
>mysql -u root -p
🌱mysql 스키마 선택
>use mysql;
🌱사용자 목록 조회
>SELECT user,host FROM user;
👊 mysql 8.0 버전부터 시스템, 일반 계정 구분 사용

👊 User 생성
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';
👊 User 삭제
drop user '사용자';
//또는
delete from user where user='사용자';
//예시
drop user 'test'@'localhost';
👊 User 권한부여
// 모든 데이터베이스의 모든 테이블에 모든 권한을 줌
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';
👊 Mysql8.0 부터 권한 설정

👊 User생성 및 권한 부여 일괄 처리 (mysql8.0 버전에서는 불가)
mysql 8.0 버전 부터는 사용자 생성 및 권한 부여 한번에 불가🙅♀️
mysql 8.0 버전 부터는 사용자 생성 및 권한 부여 한번에 가능🙆♂️

👊 권한 즉시 반영
FLUSH PRIVILEGES;
Ref. https://jay-so.tistory.com/67
Ref. https://velog.io/@eigenkyeong/MySQL-%EC%82%AC%EC%9A%A9%EC%9E%90-%EC%A1%B0%ED%9A%8C-%EC%83%9D%EC%84%B1-%EC%A0%9C%EA%B1%B0-%EA%B6%8C%ED%95%9C%EB%B6%80%EC%97%AC
Ref. https://hotinme35.tistory.com/56
728x90