> 데이터 베이스 > MySQL 튜토리얼 > MySQL에서 사용자에게 다른 권한을 할당하는 방법

MySQL에서 사용자에게 다른 권한을 할당하는 방법

PHPz
풀어 주다: 2023-04-20 10:34:47
원래의
1937명이 탐색했습니다.

MySQL은 대용량 데이터를 저장하고 관리하는 데 사용할 수 있는 일반적인 관계형 데이터베이스 관리 시스템입니다. MySQL에서 관리자는 서로 다른 데이터베이스와 테이블에서 서로 다른 작업을 수행할 수 있도록 서로 다른 사용자에게 서로 다른 권한을 할당해야 합니다. 이 문서에서는 사용자에게 다양한 MySQL 권한을 할당하는 방법을 소개합니다.

  1. MySQL에 로그인

MySQL에 로그인하려면 명령줄 인터페이스에 다음 명령을 입력하세요.

mysql -u root -p
로그인 후 복사

그 중 "-u" 옵션은 사용할 사용자 이름을 지정하는 데 사용되며 " root"는 관리자 사용자 이름입니다. "-p" 옵션은 사용자가 로그인하려면 비밀번호를 입력하도록 MySQL에 지시합니다. MySQL에 로그인할 때 올바른 비밀번호를 제공해야 합니다.

  1. 사용자 만들기

다음 명령을 사용하여 새 사용자를 만듭니다.

CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'password';
로그인 후 복사

여기서 "new_user"는 새 사용자의 사용자 이름입니다. 대신 기억하기 쉬운 사용자 이름을 새 사용자에게 할당해야 합니다. 임의의 이름을 사용하는 것입니다. "localhost"는 이 사용자의 IP 주소를 localhost로만 제한하는 것을 의미합니다. 이 사용자가 외부 호스트에서 데이터베이스에 액세스할 수 있도록 하려면 대신 "%" 기호를 사용하십시오. 마지막으로 "password"는 새 사용자의 비밀번호이며 새 사용자에 대해 보안 비밀번호를 설정해야 합니다.

  1. 권한 할당

권한 할당에는 두 가지 측면이 포함됩니다. 하나는 사용자가 작동할 수 있는 데이터베이스 및 테이블에 대한 권한을 할당하는 것이고, 다른 하나는 MySQL Server의 전역 권한을 사용자에게 할당하는 것입니다.

사용자에게 특정 데이터베이스 및 테이블 권한 부여:

GRANT 权限 ON 数据库名.数据表名 TO 'user_name'@'访问来源';
로그인 후 복사

그 중에서 "권한"은 SELECT, INSERT, DELETE, UPDATE, ALL PRIVILEGES 등과 같이 부여된 특정 작업 권한을 의미합니다. "user_name"은 사용자입니다. 권한이 할당될 사람 이름, "액세스 소스"는 사용자의 액세스 소스를 나타냅니다. 예를 들어 'localhost'는 로컬 호스트에 있음을 의미하고 '%' 기호는 사용자가 모든 주소에서 리소스에 액세스할 수 있음을 의미합니다.

데이터베이스 작업 권한을 부여하는 명령문 예:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER
ON test_db.*
TO 'new_user'@'localhost';
로그인 후 복사

테이블 작업 권한을 부여하는 명령문 예:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER
ON test_db.test_table
TO 'new_user'@'localhost';
로그인 후 복사

MySQL 서버의 사용자에게 전역 권한 부여:

GRANT 权限 ON *.* TO 'user_name'@'access_mode';
로그인 후 복사

여기에서 "."은 전역 권한을 나타냅니다. 예를 들어, 새 사용자에게 모든 데이터베이스 및 테이블에 대한 모든 권한을 부여하려면 다음 명령을 사용합니다.

GRANT ALL PRIVILEGES ON *.* TO 'new_user'@'localhost';
로그인 후 복사
  1. Revoke Permissions

마찬가지로 관리자가 사용자의 권한을 취소해야 하는 경우 다음 명령문을 사용할 수 있습니다.

REVOKE 权限 ON 数据库名.数据表名 FROM 'user_name'@'访问来源';
로그인 후 복사

구문은 GRANT와 유사합니다. 예를 들어, 다음 명령은 사용자 "new_user"의 모든 전역 권한을 취소합니다.

REVOKE ALL PRIVILEGES ON *.* FROM 'new_user'@'localhost';
로그인 후 복사

요약

MySQL에서 관리자는 서로 다른 데이터베이스 및 테이블 운영에서 서로 다른 작업을 수행할 수 있도록 서로 다른 사용자에게 서로 다른 권한을 할당해야 합니다. 관리자는 GRANT 및 REVOKE 문을 사용하여 사용자가 수행할 수 있는 작업을 제어할 수 있습니다.

위 내용은 MySQL에서 사용자에게 다른 권한을 할당하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿