반응형
권한을 부여하는 것은 관리자 계정의 콘솔 창에서 진행해도 무방하다.
단, 관리자 계정이 다른 계정을 생성할 권한이 있어야 한다. 어디까지 허용할지 권한 주는 것도 허용되어 있어야 한다.
확인
계정 관리자 권한 확인
show databases;
select * from mysql.user;
자세한 권한 확인
show grants for '계정명'@'호스트이름'
계정 생성
계정 생성
CREATE USER 'readonly_user'@'localhost' IDENTIFIED BY '비밀번호';
계정 권한 부여
GRANT SELECT ON `my_database`.* TO 'readonly_user'@'localhost'; // my_database 에만 조회 권한 부여
GRANT SELECT ON *.* TO 'readonly_user'@'localhost'; // 모든 데이터베이스에 조회 권한 부여
GRANT ALL PRIVILEGES
기타
'%'
'%' 는 MariaDB 에서 모든 호스트를 의미한다. 즉, 생성한 계정의 사용자가 어떤 IP 주소나 호스트명에서든지 접속할 수 있도록 허용한다.
localhost는 로컬 컴퓨터에서만 접속을 허용하는 반면, '%' 를 사용하면 원격 서버에서도 연결할 수 있게 된다.
WITH GRANT OPTION
WITH GRANT OPTION 은 MariaDB에서 사용자의 권한을 부여할 때, 그 사용자가 다른 사용자에게 해당 권한을 다시 부여할 수 있는 권한을 포함시킬 때 사용하는 옵션이다.
GRANT SELECT ON my_database.* TO 'readonly_user'@'localhost' WITH GRANT OPTION;
다른 사용자에게 권한을 위임할 수 있는 권한을 부여하는 것이다.
반응형