사용자를 추가하여 mysql에 액세스할 수 없는 문제에 대한 해결 방법: 먼저 MySQL 서버에 관리자로 로그인하고 MySQL 사용자를 생성한 다음 MySQL 사용자 권한을 부여하고 다음 명령을 실행하여 "myuser"를 부여합니다. 사용자별 권한, 마지막으로 사용자 리소스 제한 및 확인을 추가합니다. ㅋㅋㅋ 에 MySQL 서버.
$ mysql -u root -p
생성된 사용자 보기mysql.user에서 호스트, 사용자 선택;MySQL 사용자 만들기
MySQL 사용자 권한 부여创建一个用户名和密码分别为"myuser"和"mypassword"的用户,可访问地址为%所有,也可以设定ip或者localhost。 mysql> CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypassword'; 用户被创建后,包括加密的密码、权限和资源限制在内的所有帐号细节都会被存储在mysql这个库的user的表中。 ** 运行下列命令,验证帐号是否创建成功** mysql> SELECT host, user, password FROM mysql.user WHERE user='myuser';로그인 후 복사
새로 생성된 MySQL 사용자에게는 액세스 권한이 없으므로 MySQL 데이터베이스에서 어떤 작업도 수행할 수 없습니다. 사용자에게 필요한 권한을 부여해야 합니다. 사용 가능한 권한은 다음과 같습니다.
All: 사용 가능한 모든 권한
Create: 라이브러리, 테이블 및 인덱스 생성Lock_tables: 테이블 잠금
alter: 테이블 수정
Delete : 테이블 삭제
INSERT: 테이블 또는 열 삽입DROP: 라이브러리 삭제 , 테이블 and views
mysql> GRANT <privileges> ON <database>.<table> TO 'myuser'@'localhost'; 以上命令中,<privileges> 代表着用逗号分隔的权限列表。如果你想要将权限赋予任意数据库(或表),那么使用星号(*)来代替数据库(或表)的名字。 例如,为所有数据库/表赋予 CREATE 和 INSERT 权限: mysql> GRANT CREATE, INSERT ON *.* TO 'myuser'@'localhost';
mysql> SHOW GRANTS FOR 'myuser'@'localhost'; **将全部的权限赋予所有数据库/表:** mysql> GRANT ALL ON *.* TO 'myuser'@'localhost'; **你也可以将用户现有的权限删除。使用以下命令废除"myuser"帐号的现有权限:** mysql> REVOKE <privileges> ON <database>.<table> FROM 'myuser'@'localhost';
MAX_QUERIES_PER_HOUR: 允许的每小时最大请求数量 MAX_UPDATES_PER_HOUR: 允许的每小时最大更新数量 MAX_CONNECTIONS_PER_HOUR: 允许的每小时最大连接(LCTT译注:其与 MySQL全局变量: max_user_connections 共同决定用户到数据库的同时连接数量)数量 MAX_USER_CONNECTIONS: 对服务器的同时连接量
다음 명령을 사용하여 "myuser" 계정에 리소스 제한을 추가합니다.
mysql> GRANT USAGE ON <database>.<table> TO 'myuser'@'localhost' WITH <resource-limits>; 在 <resource-limits> 中你可以指定多个使用空格分隔开的资源限制。 例如,增加 MAXQUERIESPERHOUR 和 MAXCONNECTIONSPERHOUR 资源限制: mysql> GRANT USAGE ON *.* TO 'myuser'@'localhost' WITH MAX_QUERIES_PER_HOUR 30 MAX_CONNECTIONS_PER_HOUR 6;
사용자의 리소스 제한을 확인합니다.
mysql> SHOW GRANTS FOR 'myuser'@'localhost;
생성의 마지막 중요한 단계 MySQL 사용자 설정:
mysql> FLUSH PRIVILEGES;
위 내용은 mysql에 추가된 사용자에 접근할 수 없으면 어떻게 해야 하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!