MySQL은 정교한 액세스 제어 및 권한 시스템을 구현하여 클라이언트 작업을 처리하기 위한 포괄적인 액세스 규칙을 생성하고 승인되지 않은 클라이언트가 데이터베이스 시스템에 액세스하는 것을 효과적으로 방지할 수 있습니다.
1 클라이언트가 서버에 연결되면 MySQL 액세스 제어에는 두 단계가 있습니다.
연결 확인
: MySQL 데이터베이스 서버에 연결하는 클라이언트에는 유효한 사용자 이름이 있어야 합니다. 그리고 비밀번호. 또한 클라이언트가 연결하는 호스트는 MySQL 인증 테이블의 호스트와 일치해야 합니다. 连接验证
:连接到MySQL数据库服务器的客户端需要有一个有效的用户名和密码。此外,客户端连接的主机必须与MySQL授权表中的主机相匹配。
请求验证
:当连接成功建立后,对于客户端发出的每个语句,MySQL会检查客户端是否具有足够的权限来执行该特定语句。 MySQL能够检查数据库,表和字段级别的权限
2.MySQL安装程序
自动创建一个名为mysql的数据库。
mysql数据库
包含五个主要的授权表。 您可通过GRANT
和REVOKE
等语句间接操作这些表
user
表:包含用户帐户和全局权限列。MySQL使用user
表来接受或拒绝来自主机的连接。 在user
表中授予的权限对MySQL服务器上的所有数据库都有效。
db
表:包含数据库级权限。MySQL使用数据库表来确定用户可以访问哪个数据库以及哪个主机。在db
表中的数据库级授予的特权适用于数据库,所有对象属于该数据库,例如表
,触发器
,视图
,存储过程
等。
table_priv
和columns_priv
表:包含表级和列级权限。 在table_priv
表中授予的权限适用于表及其列,而在columns_priv
表中授予的权限仅适用于表的特定列。
procs_priv
요청 확인
: 연결이 성공적으로 설정되면 클라이언트가 발행한 각 명령문에 대해 MySQL은 클라이언트가 해당 특정 명령문을 실행할 수 있는 충분한 권한을 가지고 있는지 확인합니다. MySQL은 데이터베이스, 테이블 및 필드 수준 권한을 확인할 수 있습니다2.MySQL 설치 프로그램
은 mysql이라는 데이터베이스를 자동으로 생성합니다.
mysql 데이터베이스
에는 5개의 주요 인증 테이블이 포함되어 있습니다. GRANT
및 REVOKE
🎜🎜🎜🎜user
테이블과 같은 문을 통해 이러한 테이블을 간접적으로 작동할 수 있습니다. 테이블에는 사용자 계정 및 전역 권한 열이 포함됩니다. MySQL은 user
테이블을 사용하여 호스트로부터의 연결을 수락하거나 거부합니다. user
테이블에 부여된 권한은 MySQL 서버의 모든 데이터베이스에 유효합니다. 🎜🎜🎜🎜db
테이블: 데이터베이스 수준 권한을 포함합니다. MySQL은 데이터베이스 테이블을 사용하여 사용자가 액세스할 수 있는 데이터베이스와 호스트를 결정합니다. db
테이블의 데이터베이스 수준에서 부여된 권한은 테이블
, 트리거
, 등 모든 개체가 속한 데이터베이스에 적용됩니다. 뷰
, 저장 프로시저
등 🎜🎜🎜🎜table_priv
및 columns_priv
테이블: 테이블 수준 및 열 수준 권한을 포함합니다. table_priv
테이블에 부여된 권한은 테이블과 해당 열에 적용되는 반면, columns_priv
테이블에 부여된 권한은 테이블의 특정 열에만 적용됩니다. 🎜🎜🎜🎜procs_priv
테이블: 저장 함수 및 저장 프로시저에 대한 권한이 포함되어 있습니다. 🎜🎜🎜🎜🎜MySQL은 이러한 테이블을 사용하여 MySQL 데이터베이스 서버의 권한을 제어합니다. 유연한 액세스 제어 시스템을 구현하기 전에 이러한 표를 이해하는 것이 중요합니다. 🎜🎜추천: 🎜mysql 튜토리얼🎜🎜위 내용은 MySQL 액세스 제어 시스템 시작하기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!