mysql 用户跟权限管理

WBOY
发布: 2016-06-07 16:25:14
原创
1204 人浏览过

mysql 用户和权限管理 首先mysql root用户登录 [root@xx ~]# mysql -u root -p Enter password: 输入密码 切换数据库 mysql use mysql; 创建一个用户 mysql insert into user(host,user,password) values ("%","game",password("xxxxx"));Query OK, 1 row aff

mysql 用户和权限管理
首先mysql root用户登录
[root@xx ~]# mysql -u root -p 
Enter password: 输入密码
登录后复制


切换数据库
mysql> use mysql;
登录后复制


创建一个用户
mysql> insert into user(host,user,password) values ("%","game",password("xxxxx"));
Query OK, 1 row affected, 4 warnings (0.00 sec)
登录后复制


host表示可以进行连接的主机
% 通配符,表示任何主机,允许远程连接时一般这么设置
也可以设置某个ip段: x.x.x.%
localhost表示只能本机连


刷新系统权限
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
登录后复制
登录后复制



创建一个数据库
mysql> create database game;
Query OK, 1 row affected (0.06 sec)
登录后复制


分配game数据库的所有权限给game用户
mysql> grant all privileges on game.* to game@"%" identified by 'xxxx';
Query OK, 0 rows affected (0.00 sec)
登录后复制


all 表示dba权限 包括 select, insert, update, delete,create,alter,execute ...
game.*表示game下的所有对象,也可以 *.*表示所有数据库对象
如果想指定部分权限给一用户,可以这样来写:
mysql>grant select,update on game.* to game@localhost identified by 'xxxx';
登录后复制


刷新系统权限
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
登录后复制
登录后复制

这是game用户可以远程连接game数据库

修改指定用户密码
mysql>update mysql.user set password=password('新密码') where 
User="game" and Host="%";
登录后复制


删除指定用户
mysql>DELETE FROM user WHERE User="game" and Host="localhost";
mysql>flush privileges;
登录后复制


查看用户权限
mysql> show grants for game;
+-----------------------------------------------------------------------------------------------------+
| Grants for game@%                                                                                   |
+-----------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'game'@'%' IDENTIFIED BY PASSWORD '*6830234338985B955032067DE689AFC3ECD27EEA' |
| GRANT ALL PRIVILEGES ON `game`.* TO 'game'@'%'                                                      |
+-----------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
登录后复制


收回用户权限
revoke all on game.* from game@%;
登录后复制


分配权限是 grant 权限 to 用户,收回是revoke 权限 from 用户。
修改用户或用户相关的权限等,都要执行flush privileges才生效

mysql> quit
Bye
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!