mysql学习笔记----增加新用户权限
程序员文章站
2022-05-31 17:31:21
...
1.向MySql增加新用户权限:
第一种:使用GRANT语句
比较好的方法,更简明并且错误少
超级用户,本机连接,完全权限
超级用户,其他主机,完全权限
账户用户名admin,没有密码,只能本机连接,授予RELOA和PROCESS管理权限。
这些权限允许admin用户执行mysqladmin reload、mysqladmin refresh和
mysqladmin flush-xxx命令,以及mysqladmin processlist。
未授予访问数据库的权限。你可以通过GRANT语句添加此类权限。
一个账户有用户名dummy,没有密码。该账户只用于从本机连接。
未授予权限。
通过GRANT语句中的USAGE权限,你可以创建账户而不授予任何权限。
它可以将所有全局权限设为'N'。假定你将在以后将具体权限授予该账户。
第二种:直接用INSERT语句创建相同的账户,然后用FLUSH PRIVILEGES告诉服务器重载授权表
第一种:使用GRANT语句
比较好的方法,更简明并且错误少
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost'
-> IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
超级用户,本机连接,完全权限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%'
-> IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
超级用户,其他主机,完全权限
mysql> GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost';
账户用户名admin,没有密码,只能本机连接,授予RELOA和PROCESS管理权限。
这些权限允许admin用户执行mysqladmin reload、mysqladmin refresh和
mysqladmin flush-xxx命令,以及mysqladmin processlist。
未授予访问数据库的权限。你可以通过GRANT语句添加此类权限。
mysql> GRANT USAGE ON *.* TO 'dummy'@'localhost';
一个账户有用户名dummy,没有密码。该账户只用于从本机连接。
未授予权限。
通过GRANT语句中的USAGE权限,你可以创建账户而不授予任何权限。
它可以将所有全局权限设为'N'。假定你将在以后将具体权限授予该账户。
第二种:直接用INSERT语句创建相同的账户,然后用FLUSH PRIVILEGES告诉服务器重载授权表
mysql> INSERT INTO user
-> VALUES('localhost','monty',PASSWORD('some_pass'),
-> 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
mysql> INSERT INTO user
-> VALUES('%','monty',PASSWORD('some_pass'),
-> 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
mysql> INSERT INTO user SET Host='localhost',User='admin',
-> Reload_priv='Y', Process_priv='Y';
mysql> INSERT INTO user (Host,User,Password)
-> VALUES('localhost','dummy','');
mysql> FLUSH PRIVILEGES;