1.all privileges:表示将所有权限授予给用户。也可指定具体的权限,如:SELECT、CREATE、DROP等。
2.on:表示这些权限对哪些数据库和表生效,格式:数据库名.表名,这里写“*”表示所有数据库,所有表。如果我要指定将权限应用到test库的user表中,可以这么写:test.user
3.to:将权限授予哪个用户。格式:”用户名”@”登录IP或域名”。%表示没有限制,在任何主机都可以登录。比如:”yangxin”@”192.168.0.%”,表示yangxin这个用户只能在192.168.0IP段登录
4.identified by:指定用户的登录密码
5.with grant option:表示允许用户将自己的权限授权给其它用户
//---------------------------------------------------------------------------------
一开始在网上看别人是这样子修改远程连接的:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'abc123' WITH GRANT OPTION;
后来我也按照这样子修改,结果显示:
Your password does not satisfy the current policy requirements
于是乎我查看了下安全策略如下:
SHOW VARIABLES LIKE 'validate_password%';查看安全策略
+--------------------------------------+-------+
| Variable_name | Value |
+--------------------------------------+-------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 8 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | LOW |
| validate_password_special_char_count | 1 |
+--------------------------------------+-------+
ALTER USER 'root'@'%' IDENTIFIED BY 'yourpassword';修改远程连接的用户和密码,另外这样修改远程连接的密码与在本地服务器连接登录的密码是两个不能概念的密码
最后就可以成功实现远程连接了