mysql帐号管理

来源:互联网 发布:用的什么java工具 编辑:程序博客网 时间:2024/06/05 10:27

mysql用户帐号管理

1,用户登录:

要使用命令行客户端连接到MySQL服务器,请根据需要为要使用的帐户指定用户名和密码选项:

shell> mysql --user=finley --password db_nameshell> mysql -u finley -p db_name

如果省略了命令行上的–password或-p选项后面的密码值,客户端将提示输入密码 。

shell> mysql --user=finley --password=password db_nameshell> mysql -u finley -ppassword db_name

如果使用该-p选项,则-p与密码值之间没有空格。

2、添加用户帐号

连接到服务器后root,你可以添加新帐户。

mysql> CREATE USER 'finley'@'localhost' IDENTIFIED BY 'password';mysql> GRANT ALL PRIVILEGES ON *.* TO 'finley'@'localhost' WITH GRANT OPTION;mysql> CREATE USER 'finley'@'%' IDENTIFIED BY 'password';mysql> GRANT ALL PRIVILEGES ON *.* TO 'finley'@'%' WITH GRANT OPTION;

创建的帐户具有以下属性:

  • 两个帐户的用户名为finley。两者都是具有完全权限的超级用户帐户。’finley’@’localhost’帐户只能在从本地主机连接时使用。’finley’@’%’帐户使用 ‘%’通配符作为主机部分,因此可用于从任何主机连接。

要查看帐户的权限,可以使用 SHOW GRANTS:

mysql> SHOW GRANTS FOR 'admin'@'localhost';+-----------------------------------------------------+| Grants for admin@localhost                          |+-----------------------------------------------------+| GRANT RELOAD, PROCESS ON *.* TO 'admin'@'localhost' |+-----------------------------------------------------+

下一个示例创建三个帐户并授予他们对特定数据库的访问权限。他们每个用户名 custom和密码为 password:

mysql> CREATE USER 'custom'@'localhost' IDENTIFIED BY 'password';mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP    ->     ON bankaccount.*    ->     TO 'custom'@'localhost';mysql> CREATE USER 'custom'@'host47.example.com' IDENTIFIED BY 'password';mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP    ->     ON expenses.*    ->     TO 'custom'@'host47.example.com';mysql> CREATE USER 'custom'@'%.example.com' IDENTIFIED BY 'password';mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP    ->     ON customer.*    ->     TO 'custom'@'%.example.com';

三个帐户可以使用如下:

  • 第一个帐户可以访问 bankaccount数据库,但只能从本地主机访问。
  • 第二个帐户可以访问expenses 数据库,但只能从主机访问 host47.example.com。
  • 第三个帐户可以customer 从example.com 域中的任何主机访问数据库。由于使用%帐户名称的主机部分中的通配符,该帐户可以访问域中所有计算机。

3、删除用户帐号

要删除帐户,使用DROP USER语句 。例如:

mysql> DROP USER 'jeffrey'@'localhost';

4、修改用户帐号密码

SET PASSWORD可以使用或不使用FOR明确命名用户帐户的子句:

  • 使用子句,该语句为指定帐户设置密码。
SET PASSWORD FOR 'jeffrey'@'localhost' = 'auth_string';
  • 不使用子句,该语句设置当前用户的密码。
SET PASSWORD = 'auth_string';

5、回收用户帐号权限

回收用户指定的权限,如回收INSERT权限。

REVOKE INSERT ON *.* FROM 'jeffrey'@'localhost';

要撤消用户所有权限,可以使用下面语法。

REVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user] ...
原创粉丝点击