반응형
MySQL을 설치하게 되면 가장 먼저 사용하게 되는 계정은 root.
관리자 계정이기 때문에, 데이터베이스에 모든 권한을 가지고 있지만 새로 생성한 계정에는 권한이 없기 때문에 초기에는 아무것도 할 수 없습니다.
실제로 개발자와 사용자에 따라서 계정을 생성하고, 권한을 부여 받아서 사용합니다.
--MySQL root 권한 접속 mysql -u root -p -- MySQL 스키마 선택 use 스키마 이름;
사용자 생성
CREATE USER '사용자'@'host' IDENTIFIED BY '비밀번호'; -- 내부 접근을 허용하는 사용자 추가 CREATE USER '사용자'@'localhost' IDENTIFIED BY '1234'; -- 외부 접근을 허용하는 사용자 추가 CREATE USER '사용자'@'%' IDENTIFIED BY '1234'; -- 특정 ip만 접근을 허용하는 사용자 추가 CREATE USER '사용자'@'123.456.789.100' IDENTIFIED BY '1234'; -- 특정 ip 대역을 허용하는 사용자 추가 CREATE USER '사용자'@'123.456.789.%' IDENTIFIED BY '1234';
사용자 제거
DROP USER 'test'@'localhost'; -- or DELETE FROM user WHERE user = 'test'@'localhost';
권한 부여
-- 모든 데이터베이스의 모든 테이블에 모든 권한을 줌 GRANT ALL PRIVILEGES ON *.* TO '사용자'@'localhost'; -- 특정 데이터베이스의 모든 테이블에 모든 권한을 줌 GRANT ALL PRIVILEGES ON DB이름.* TO '사용자'@'localhost'; -- 특정 데이터베이스의 특정 테이블에 모든 권한을 줌 GRANT ALL PRIVILEGES ON DB이름.테이블명 TO '사용자'@'localhost'; -- 특정 데이터베이스의 특정 테이블에 특정 권한을 줌 GRANT SELECT ON DB이름.테이블명 TO '사용자'@'localhost'; GRANT INSERT ON DB이름.테이블명 TO '사용자'@'localhost'; GRANT DELETE ON DB이름.테이블명 TO '사용자'@'localhost'; GRANT UPDATE ON DB이름.테이블명 TO '사용자'@'localhost'; GRANT SELECT, INSERT ON DB이름.테이블명 TO '사용자'@'localhost';
반응형
'개발 & 데이터베이스 > DB' 카테고리의 다른 글
MySQL 이름, 이메일, 전화번호 데이터 마스킹 처리 방법 (0) | 2025.03.25 |
---|---|
MySQL AUTO INCREMENT 조회 및 초기화 (0) | 2025.02.03 |
Oracle vs MySQL 데이터 타입 비교 (0) | 2024.09.23 |
오라클 조건문 IF ELSIF, CASE WHEN 사용 방법 (0) | 2023.12.03 |
오라클 쿼리문 수행(실행) 시간 측정하는 방법 (SET TIMING ON) (0) | 2023.10.24 |