利用 GRANT 语句进行授权.
具体步骤如下:
①.、首先使用一个没有权限的账号链接mysql,成功之后执行:show databases;这时会发现没有权限的用户只能看到一个数据库,mysql和test等数据库是看不到的;
REVOKE ALL PRIVILEGES ON *.* FROM 'root'@'localhost'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;
grant 权限 privileges on *.* to 'newuser'@'localhost';
此命令中的星号指的是新用户【newuser】可以访问的数据库和表(分别)
权限若是写的 all 则表示:允许用户读取,写入,执行 所有数据库和表的权限;
①.、创建新用户
通过root用户登录之后创建
flush privileges ;//mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效
REVOKE select,insert ON what FROM testuser//取消用户testuser的【查询\插入】操作权限 ;
查看用户权限
mysql show grants for zx_root;
赋予权限
mysql grant select on dmc_db.* to zx_root;
回收权限
mysql revoke select on dmc_db.* from zx_root; //如果权限不存在会报错
设置权限时必须给出一下信息
①.,要授予的权限
grant和revoke可以在几个层次上控制访问权限
①.,整个服务器,使用 grant ALL 和revoke ALL
当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限.
用户地址可以是localhost,也可以是ip地址、机器名字、域名.也可以用'%表示从任何地址连接.
'连接口令'不能为空,否则创建失败.
增加一个用户test1 密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限.
首先用以root 用户连入MySQL,然后键入以下命令:
mysqlgrant select,insert,update,
grant命令:
创建一个可以从任何地方连接服务器的一个完全的超级用户,但是必须使用一个口令something 做这个:
by 'something' with GRANT OPTION;
以上就是土嘎嘎小编为大家整理的mysql怎么给所有权限相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!