Navicat 创建用户(连接) 及 SQL语句操作
(1)首先得先登录root用户(即:DBA,root权限),然后才能执行下面
use mysql;
(2)创建并授权
英文,中文我没找到解决方法
注意:此处的”localhost”,是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将”localhost”改为”%”,表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。
grant select on dbstudy.employee to 'liYong'@'localhost' identified by '123';
(3)刷新系统权限表
flush privileges;
(4)查询
select host,user,password from user;
(5)查看GUI里的用户信息
(6)连接
如果你使用中文,则会显示Access denied
(7)若出现这类情况
如果你是按之前步骤来的,这个可以忽略,因为这可能是因为你打开了其他的权限,而这个用户的权限不能访问,可以关闭navicat,重新打开,连接。
若不是,那有可能是你的权限没有grant正确,请检查各个语句。
(8)成功效果
常用语句:
use mysql;
select host,user,password from user;
grant all privileges on . to ‘用户名’ @’本机ip’ identified by ‘密码’ with grant option;
flush privileges;
create view tablename as select xxx from xx where …
CREATE VIEW empTest1 AS SELECT deptNum, MAX(salary) AS MaxSalary, MIN(salary) AS MinSalary, AVG(salary) AS AvgSalary
FROM employee
GROUP BY deptNum;
题目中:对于每个用户只能查询自己的信息。那么只能用使用,即创建针对用户创建一个视图,再grant权限。
create view liyongView as
select * from employee
where username = 'liYong';
GRANT SELECT ON dbstudy.liyongView to 'liYong'@'localhost';
---------------------
转自:https://blog.csdn.net/fanfan4569/article/details/53366038