2022. 3. 17. 18:53ㆍDATABASE
1. USER 생성
CREATE USER '[계정명]'@'[접속 위치(host)]' IDENTIFIED BY '[비밀번호]';
HOST는 IP를 입력하여 특정 IP에서만 접속할 수 있도록 허용할 수 있고, %기호를 사용하여 모든 호스트를 허용하거나 localhost를 입력하여 내부에서만 허용할 수 있음.
2. USER 삭제
DROP USER '[계정명]'@'[접속 위치(host)]';
3. 권한부여
GRANT
Create accounts and set privileges or roles.
mariadb.com
↑권한 관련 공식 문서
GRANT [권한] ON [데이터베이스].[테이블] TO '[사용자]'@'[호스트]'; // 권한 지정 부여
GRANT ALL PRIVILEGES ON [데이터베이스].[테이블] TO '[사용자]'@'[호스트]'; // 모든 권한 부여
생성한 계정에는 DB서버, DB, 테이블, 컬럼 단위로 여러 가지 권한 부여 가능. [데이터베이스]와 [테이블]에는 * 기호를 활용하여 전체 DB나 전체 테이블을 범위로 설정할 수 있으며 부여할 수 있는 권한의 종류는 아래와 같음.
전체 서버에 적용되는 권한
권한 | 설명 |
CREATE USER | 사용자를 생성하는 권한 |
FILE | LOAD DATA INFILE문과 LOAD_FILE() 함수를 사용하는 권한 |
PROCESS | SHOW PROCESSLIST 명령을 사용하는 권한 |
RELOAD | FLUSH 문을 사용하는 권한 |
REPLICATION CLIENT | SHOW MASTER STATUS와 SHOW SLAVE STATUS 명령을 사용하는 권한 |
REPLICATION SLAVE | 복제 마스터 서버에서 이루어진 업데이트 내용을 받을 권한 |
SHOW DATABASES | 서버에서 데이터베이스의 목록을 볼 수 있는 권한 |
SHUTDOWN | MYSQLADMIN SHUTDOWN 명령을 사용해서 서버를 중지할 수 있는 권한 |
SUPER | 최고 사용자가 사용하는 구문을 사용하는 권한 |
데이터베이스와 테이블 단위 권한
권한 | 설명 | 권한 | 설명 |
ALTER | 인덱스와 테이블을 변경 | EVENT | 이벤트 변경, 생성, 삭제 |
ALTER ROUTINE | 프로시저와 함수 변경, 삭제 | EXECUTE | 함수와 프로시저를 실행 |
CREATE | 데이터베이스와 테이블 생성 | INDEX | 인덱스를 생성, 삭제 |
CREATE ROUTINE | 프로시저와 함수 생성 | INSERT | 새로운 데이터 입력 |
CREATE TEMPORARY TABLES | 임시테이블 생성 | LOCK TABLES | 테이블 잠금, 해제 |
CRATE VIEW | 뷰 생성 | SELECT | 데이터 읽기 |
DELETE | 행 삭제 | SHOW VIEW | VIEW를 사용 |
DROP | 데이터베이스와 테이블 삭제 | TRIGGER | TRIGGER 생성, 삭제 |
UPDATE | 행 수정 |
기타 부가적인 권한과 제한
권한 | 설명 |
USAGE | 사용자에 대한 전역적인 설정을 변경 |
ALL PRIVILEGES | 사용가능한 모든 권한을 부여. ALL로 줄여서 사용 가능 |
GRANT OPTION | 다른 사용자에게 권한을 부여하는 권한 |
MAX_QUERIES_PER_HOUR | 사용자별로 시간당 호출할 수 있는 SQL 구문이나 쿼리의 수 설정. |
MAX_UPDATES_PER_HOUR | 시간당 호출할 수 있는 데이터를 변경하는 쿼리의 수 설정. 조회성 쿼리 제외 |
MAX_CONNECTIONS_PER_HOUR | 사용자가 시간당 접속을 시작할 수 있는 수 |
MAX_USER_CONNECTIONS | 데이터베이스 서버에 동시에 맺을 수 있는 연결 수 |
4. 권한삭제
revoke [권한] on DB이름.테이블 FROM '[사용자]'@'[호스트]'; //지정 권한 회수
revoke all on DB이름.테이블 FROM '[사용자]'@'[호스트]'; // 전체 권한 회수
5. 권한확인
SHOW GRANTS FOR '[사용자]'@'[호스트]';
[mariadb] DB 계정 별 권한 확인, 적용, 부여, 회수 계정 생성
mariadb, mysql 에서 사용 할 수 있는 DB 계정별 권한 확인, 적용, 부여 안내드리도록 하겠습니다. 우선, 계정 목록을 보는 방법 select host, user from user; 계정 생성 방법 create user 'user'@'127.0.0.1' id..
stricky.tistory.com
MariaDB 계정 생성과 권한 부여 및 회수 하기(grant, revoke)
MariaDB에서 계정을 생성하고 권한 부여하는 방법입니다. 계정 생성 방법 계정 생성 : create user '계정명'@'접속 위치(host)' identified by '비밀번호'; 접속 위치 관련 설명, 특정 IP 지정, 모든 IP 허용('%').
mentha2.tistory.com
[MariaDB 사용자 권한 설정] 권한 설정 종류 정리
MariaDB의 root계정은 데이터베이스 서버에 대한 모든 권한을 가지고, 데이터베이스가 지원하는 모든 행위를 할 수 있다. 이 행위에는 데이터베이스, 테이블의 삭제, 다른 사용자 계정의 패스워드
mentha2.tistory.com
[MySql] Mariadb, MYsql 사용자 권한주기 및 확인
# MariaDB에 사용자 권한주기 1) MariaDB 접속 # mysql -u root -p Enter password: 패스워드 입력 2) Database 리스트 확인 $ show databases; 2-1) 없다면 생성 $ create database DB명; 3) 기본으로 생성되..
postitforhooney.tistory.com
'DATABASE' 카테고리의 다른 글
우분투 MariaDB 재설치 (0) | 2022.03.17 |
---|---|
redis-server.exe - bind error, No such file or directory 오류해결 (0) | 2022.03.17 |
mariaDB general 로그 기록 설정 (0) | 2022.03.17 |
MariaDB 백업(FULL, INCREMENTAL) (0) | 2022.03.17 |
HeidiSQL을 활용한 데이터베이스 이관 (0) | 2022.03.17 |