数据库权限问题

 -- mysql数据库权限问题:root :拥有所有权限(可以干任何事情)
 -- 权限账户,只拥有部分权限(CURD)例如,只能操作某个数据库的某张表
 -- 如何修改mysql的用户密码?
 -- password: md5加密函数(单向加密)

USE mysql;

SELECT * FROM USER;
-- 修改密码
UPDATE USER SET PASSWORD=PASSWORD('123456') WHERE USER='root';
-- 数据库中存储的是加密后的密码,如果直接将密码赋值为'123456'就登陆不了数据库
-- UPDATE USER SET PASSWORD='123456' WHERE USER='root';

GRANT 权限 ON 数据库.表 TO '账户名' @'账户类型' IDENTIFIED BY '密码';

权限:SELECT INSERT DELETE UPDATE DROP CREATE 或 ALL

账户类型:1. localhost 只能本地登陆

                  2. 某个ip地址,只能在这个固定的ip地址登陆数据库

                  3. % ,没有限制(本地和远程都可以登陆)

-- 分配权限账户,将 test 数据库中表 tb1 的查看权限赋予给 user2
GRANT SELECT ON test.tb1 TO 'user2'@'localhost' IDENTIFIED BY '123456';
-- 再次执行可以追加权限
GRANT DELETE ON test.tb1 TO 'user2'@'localhost' IDENTIFIED BY '123456';

 

你可能感兴趣的:(数据库)