4 MYSQL用户管理
(1) 创建数据库用户
mysql> create user 'zhouwf'@'localhost' identified by 'zhouwf'; Query OK, 0 rows affected (0.00 sec) mysql> create user 'zhouwf'@'%' identified by 'zhouwf'; Query OK, 0 rows affected (0.00 sec)
(2) 给用户授权
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP -> ON mytest.* TO 'zhouwf'@'localhost'; Query OK, 0 rows affected (0.01 sec) mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP -> ON mytest.* TO 'zhouwf'@'%'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
(3) 删除用户
mysql> drop user 'zhouwf'@'localhost'; Query OK, 0 rows affected (0.00 sec) mysql> drop user 'zhouwf'@'%'; Query OK, 0 rows affected (0.00 sec)
(4) 修改用户密码
A、利用mysqladmin工具
C:\Program Files\MySQL\MySQL Server 5.0\bin>mysqladmin -uTEST -p password TTTT Enter password: **** C:\Program Files\MySQL\MySQL Server 5.0\bin>mysql -uTEST -pTTTT mytest Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 68 to server version: 5.0.27-community-nt Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
B、使用MYSQL数据库命令SET:
mysql> SET PASSWORD FOR 'TEST'@'LOCALHOST' = PASSWORD('TEST'); Query OK, 0 rows affected (0.00 sec)
C、使用MYSQL数据库命令GRANT IDENTIFIED BY:
mysql> grant usage on mytest.* to 'TEST'@'LOCALHOST' identified by 'TTTT'; Query OK, 0 rows affected (0.00 sec)
当然我们还可以利用REPLACE命令修改mysql.user表的内容的方式来修改密码,我们不建议这么做,这里也就不给出例子了。
5 MYSQL权限管理
MySQL存取控制包含2个阶段。
阶段1:服务器检查是否允许你连接。
阶段2:假定你能连接,服务器检查你发出的每个请求。看你是否有足够的权限
实施它。例如,如果你从数据库表中选择(select)行或从数据库删除表,服务器确定你对表有SELECT权限或对数据库有DROP权限。
在这里我们不对MYSQL的各个权限做详细的解释,我们在使用的时候可以从MYSQL联机文档中获得更多的详细信息。