MySQL之账号管理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL之账号管理相关的知识,希望对你有一定的参考价值。

一 账号管理

1 创建账号:

示例 1:

建立账号zwj,权限为在所有数据库上具有所有权限

mysql> grant all on *.* to ‘zwj‘@‘192.168.154.180‘;

Query OK, 0 rows affected (0.01 sec)


为zwj设置密码

mysql> grant all on *.* to ‘zwj‘@‘192.168.154.180‘ identified by ‘zwj‘;

Query OK, 0 rows affected (0.00 sec)


示例 2:

建立用户user01,权限为test库里所有表进行select、update、insert、delete操作,密码为"a123"。

mysql> grant select,update,insert,delete on test.* to ‘user01‘@‘192.168.154.%‘ identified by ‘a123‘;

Query OK, 0 rows affected (0.09 sec)


2 查看权限

查看指定账户的权限

mysql> show grants for ‘user01‘@‘192.168.154.%‘;

+-------------------------------------------------------------------------------------------------------------------+

| Grants for [email protected]%                                                                                   |

+-------------------------------------------------------------------------------------------------------------------+

| GRANT USAGE ON *.* TO ‘user01‘@‘192.168.154.%‘ IDENTIFIED BY PASSWORD ‘*FF680E568727C9C00FABFEE03D13BA727047CC65‘ |

| GRANT SELECT, INSERT, UPDATE, DELETE ON `test`.* TO ‘user01‘@‘192.168.154.%‘                                      |

+-------------------------------------------------------------------------------------------------------------------+

2 rows in set (0.00 sec)


查看当前用户权限

mysql> show grants;

+----------------------------------------------------------------------------------------------------------------------------------------+

| Grants for [email protected]                                                                                                              |

+----------------------------------------------------------------------------------------------------------------------------------------+

| GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘localhost‘ IDENTIFIED BY PASSWORD ‘*DCB7DF5FFC82C441503300FFF165257BC551A598‘ WITH GRANT OPTION |

| GRANT PROXY ON ‘‘@‘‘ TO ‘root‘@‘localhost‘ WITH GRANT OPTION                                                                           |

+----------------------------------------------------------------------------------------------------------------------------------------+

2 rows in set (0.00 sec)


3 更改权限

新建用户

mysql> grant select on test.* to ‘bbs‘@‘192.168.154.%‘ identified by ‘bbs‘;

Query OK, 0 rows affected (0.00 sec)

mysql> show grants for ‘bbs‘@‘192.168.154.%‘;

+----------------------------------------------------------------------------------------------------------------+

| Grants for [email protected]%                                                                                   |

+----------------------------------------------------------------------------------------------------------------+

| GRANT USAGE ON *.* TO ‘bbs‘@‘192.168.154.%‘ IDENTIFIED BY PASSWORD ‘*74BAEAC2CAFC5C7162EF373C5C85EFBC7FC8B803‘ |

| GRANT SELECT ON `test`.* TO ‘bbs‘@‘192.168.154.%‘                                                              |

+----------------------------------------------------------------------------------------------------------------+

2 rows in set (0.00 sec)


增加权限

mysql> grant select,insert,delete on test.* to ‘bbs‘@‘192.168.154.%‘;

Query OK, 0 rows affected (0.00 sec)


mysql> show grants for ‘bbs‘@‘192.168.154.%‘;

+----------------------------------------------------------------------------------------------------------------+

| Grants for [email protected]%                                                                                   |

+----------------------------------------------------------------------------------------------------------------+

| GRANT USAGE ON *.* TO ‘bbs‘@‘192.168.154.%‘ IDENTIFIED BY PASSWORD ‘*74BAEAC2CAFC5C7162EF373C5C85EFBC7FC8B803‘ |

| GRANT SELECT, INSERT, DELETE ON `test`.* TO ‘bbs‘@‘192.168.154.%‘                                              |

+----------------------------------------------------------------------------------------------------------------+

2 rows in set (0.00 sec)


撤销权限

mysql> revoke delete,insert on test.* from ‘bbs‘@‘192.168.154.%‘;

Query OK, 0 rows affected (0.01 sec)


mysql> show grants for ‘bbs‘@‘192.168.154.%‘;

+----------------------------------------------------------------------------------------------------------------+

| Grants for [email protected]%                                                                                   |

+----------------------------------------------------------------------------------------------------------------+

| GRANT USAGE ON *.* TO ‘bbs‘@‘192.168.154.%‘ IDENTIFIED BY PASSWORD ‘*74BAEAC2CAFC5C7162EF373C5C85EFBC7FC8B803‘ |

| GRANT SELECT ON `test`.* TO ‘bbs‘@‘192.168.154.%‘                                                              |

+----------------------------------------------------------------------------------------------------------------+

2 rows in set (0.00 sec)


4 修改账号密码

方式 1:

mysql> set password for ‘bbs‘@‘192.168.154.%‘ = password(‘abc-123‘);

Query OK, 0 rows affected (0.01 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)


方式 2:

mysql> update mysql.user set password=password(‘aaa‘) where user=‘bbs‘ and host=‘192.168.154.%‘;

Query OK, 1 row affected (0.00 sec)

Rows matched: 1  Changed: 1  Warnings: 0

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)


方式 3:

[[email protected] tmp]# mysqladmin -u bbs -h 192.168.154.180 password "ccc" -p

Enter password: 

Warning: Using a password on the command line interface can be insecure.

为root修改密码:

[[email protected] tmp]# mysqladmin -uroot password ‘root‘ -p

Enter password: 

Warning: Using a password on the command line interface can be insecure.


5 删除账户

mysql> drop user ‘bbs‘@‘192.168.154.%‘;

Query OK, 0 rows affected (0.00 sec)


mysql> show grants for ‘bbs‘@‘192.168.154.%‘;

ERROR 1141 (42000): There is no such grant defined for user ‘bbs‘ on host ‘192.168.154.%‘


本文出自 “一万年太久,只争朝夕” 博客,请务必保留此出处http://zengwj1949.blog.51cto.com/10747365/1921317

以上是关于MySQL之账号管理的主要内容,如果未能解决你的问题,请参考以下文章

mysql/mariadb知识点总结 之 用户管理语句

mysql的账号管理

Mysql账号管理

mysql创建账号及管理权限

Linux之账号管理

MYSQL的账号管理和授权