Home
Linux
Golang
MySQL
PHP
Other
MySQL账号权限设置
创建日期:2019-09-02 15:49:59
更新日期:2023-12-01 14:12:39
栏目:
MySQL
浏览:959
[TOC] ## 一、创建用户 `CREATE USER 'username'@'host' IDENTIFIED BY 'password';` 说明: `username`:你将创建的用户名 `host`:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符% `password`:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器. 例子: ``` CREATE USER 'shu'@'localhost' IDENTIFIED BY '123456'; CREATE USER 'xiao'@'223.15.236.120' IDENTIFIED BY '123456'; CREATE USER 'yuan'@'%' IDENTIFIED BY '123456'; CREATE USER 'shuang'@'%' IDENTIFIED BY ''; CREATE USER 'test'@'%'; # 刷新权限 flush privileges; //刷新权限 ``` ## 二、授权 `GRANT privileges ON databasename.tablename TO 'username'@'host';` 说明: `privileges`:用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).如果要授予所的权限则使用ALL `databasename`:数据库名 `tablename`:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*. `username`:需要分配的用户 `host`:指定用户登录的主机 例子: ``` GRANT SELECT, INSERT ON test.user TO 'pig'@'%'; # 所有数据库的所有权限,在任意主机上 GRANT ALL ON *.* TO 'pig'@'%'; # social数据库的所有权限,在任意主机上 GRANT all ON social.* TO 'pig'@'%'; # 注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令: GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION; # 刷新权限 flush privileges; //刷新权限 ``` ## 三、设置与更改用户密码 `SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');` 如果是当前登陆用户用 `SET PASSWORD = PASSWORD("newpassword");` ## 四、撤销用户权限 `REVOKE privilege ON databasename.tablename FROM 'username'@'host';` 说明: `privilege` `databasename` `tablename` - 同授权部分. 例子: ` REVOKE SELECT ON *.* FROM 'pig'@'%';` > 注意: 假如你在给用户'pig'@'%'授权的时候是这样的(或类似的): `GRANT SELECT ON test.user TO 'pig'@'%';`, 则在使用 `REVOKE SELECT ON *.* FROM 'pig'@'%';` 命令并不能撤销该用户对test数据库中user表的SELECT 操作.相反,如果授权使用的是 `GRANT SELECT ON *.* TO 'pig'@'%';` 则 `REVOKE SELECT ON test.user FROM 'pig'@'%';` 命令也不能撤销该用户对test数据库中user表的Select 权限. 具体信息可以用命令 `SHOW GRANTS FOR 'pig'@'%';` 查看 ## 五、删除用户 ` DROP USER 'username'@'host';` 如果发现双击打开某张表的时候很慢,至少要3秒。 原因是:当远程访问mysql时, mysql会解析域名, 所以会导致访问速度很慢, 会有2,3秒延时! 解决办法:修改mysql安装目录下的my.ini,加上下面这个配置可解决此问题。在[mysqld]下加入:skip-name-resolve 保存退出后重启mysql服务。 然后访问速度就和本地一样快啦。 ## 六、附表:MySQL中的操作权限 还没百度,稍后加上
内容版权声明:本文为舒孝元原创文章,转载无需和我联系,但请注明来自
舒孝元博客:https://www.shuxiaoyuan.com/info/10
联系邮箱:sxy@shuxiaoyuan.com