집 >데이터 베이스 >MySQL 튜토리얼 >MySQL에서 사용자를 생성하고 권한을 부여하는 방법
MySQL 사용자를 생성하고 권한을 부여하는 방법은 무엇입니까? 보안을 강화하려면 데이터베이스에 액세스하는 루트가 아닌 각 애플리케이션마다 별도의 사용자 계정을 생성해야 합니다. 이렇게 하면 응용 프로그램이 다른 응용 프로그램의 데이터베이스에 액세스할 수 없습니다. 따라서 사용자 계정을 생성하고 데이터베이스에 권한을 할당하려면 mysql 관리자(루트) 권한이 필요합니다.
참고로 MySQL 루트 계정은 시스템 루트 계정과 다르며 둘 사이에는 아무런 관계가 없습니다. (관련 권장 사항: MySQL 튜토리얼)
1. MySQL에서 새 사용자를 생성합니다
쉘 액세스 권한이 있는 루트 사용자를 사용하여 MySQL 서버에 로그인하고 "rahul"이라는 새 사용자를 생성합니다. 다음 명령은 localhost 시스템에서 사용자 rahul의 MySQL 서버에 대한 액세스만 허용합니다.
mysql> CREATE USER 'rahul'@'localhost' IDENTIFIED BY 'password';
이제 특정 데이터베이스에 권한을 할당하세요. 다음 명령은 사용자 rahul이 데이터베이스 "mydb"에 대한 모든 권한을 갖도록 허용합니다.
mysql> GRANT ALL ON mydb.* TO 'rahul'@'localhost';
사용자를 생성하고 적절한 권한을 할당한 후 권한을 다시 로드하세요.
mysql> FLUSH PRIVILEGES;
2. 원격으로 액세스할 수 있는 MySQL 사용자를 만듭니다
모든 사용자가 원격 시스템에서 MySQL 서버에 연결할 수 있도록 허용합니다. 원격 시스템의 호스트 이름이나 IP 주소를 지정해야 합니다. %를 사용하여 모든 호스트를 허용할 수도 있습니다
mysql> CREATE USER 'rahul'@'123.45.67.89' IDENTIFIED BY 'password'; mysql> CREATE USER 'rahul'@'%' IDENTIFIED BY 'password'; mysql> FLUSH PRIVILEGES;
3. MySQL에서 특정 사용자 권한을 부여하세요
다음은 MySQL 사용자에 대한 일반적인 권한 목록입니다. MySQL 사용자에 대한 전체 권한 목록을 보려면 여기를 방문하세요.
ALL [PRIVILEGES] - 사용자에게 모든 권한을 부여합니다.
CREATE - 사용자에게 새 데이터베이스 및 테이블을 생성할 수 있는 권한을 부여합니다.
DROP - 사용자에게 데이터베이스 및 테이블을 삭제할 수 있는 권한을 부여합니다.
DELETE - 사용자에게 테이블의 행을 삭제할 수 있는 권한을 부여합니다.
ALTER - 사용자에게 테이블 구조를 수정할 수 있는 권한을 부여합니다.
INSERT - 사용자에게 테이블에 행을 삽입(추가)할 수 있는 권한을 부여합니다.
SELECT - 사용자에게 select 명령을 실행하여 테이블에서 데이터를 읽을 수 있는 권한을 부여합니다.
UPDATE - 사용자에게 테이블의 데이터를 업데이트할 수 있는 권한을 부여합니다.
EXECUTE - 사용자에게 저장된 루틴을 실행할 수 있는 권한을 부여합니다.
FILE - 사용자에게 서버 호스트의 파일에 대한 액세스 권한을 부여합니다.
GRANT OPTION - 사용자에게 다른 사용자에게 권한을 부여하거나 제거할 수 있는 권한을 부여합니다.
여기서 모든 권한 대신 쉼표로 구분된 권한을 지정할 수 있습니다. 예를 들어 mydb 데이터베이스의 'rahul'@'localhost'에 대한 CREATE, DELETE, INSERT, UPDATE 액세스를 허용합니다.
mysql> GRANT CREATE,DELETE,INSERT,UPDATE ON mydb.* TO 'rahul'@'localhost'; mysql> FLUSH PRIVILEGES;
4. MySQL
에서 사용자 권한을 취소하려면 REVOKE 명령을 사용하여 사용자의 특정 권한을 제거하세요. 예를 들어 mydb 데이터베이스의 'rahul'@'localhost' 사용자에게서 DELETE 권한을 제거합니다.
mysql> REVOKE DELETE ON mydb.* TO 'rahul'@'localhost'; mysql> FLUSH PRIVILEGES;
5. MySQL에서 사용자 삭제
DROP 명령을 사용하여 MySQL에서 사용자를 삭제할 수 있습니다. 예를 들어 'rahul'@'localhost' 사용자를 삭제하려면 다음 명령을 사용할 수 있습니다.
rreee위 내용은 MySQL에서 사용자를 생성하고 권한을 부여하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!