Linux 环境下添加mysql用户、修改用户权限

本文详细介绍如何在MySQL中创建用户、设置密码、授权及撤销权限等关键操作,并提供了解决常见问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、创建用户

[html]  view plain  copy
  1. mysql> create user 'kuke'@'localhost' identified by 'root';  

说明:kuke – 你将创建的用户名, localhost – 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,  如 果想让该用户可以从任意远程主机登陆,可以使用通配符%.

root –  该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登 陆服务器.

如果要修改用户密码:

[html]  view plain  copy
  1. mysql> set password for kuke=password('123456');  
删除用户:

[html]  view plain  copy
  1. mysql> drop user kuke;  


二、授权

[html]  view plain  copy
  1. mysql> grant all on tiku.* to kuke;  

all :所有权限,包括 select ,update ,insert ,delete ,如果不想授权所有权限,可这样写:

[html]  view plain  copy
  1. mysql> grant select,insert on tiku.* to kuke;  

tiku: 数据库名,表示该用户只可对该数据库进行操作

*  : 表名,表示该用户只可对该表进行操作

如果想让该用户对所有数据库操作,可这样写:

[html]  view plain  copy
  1. mysql> grant all on *.* to kuke;  

如果要取消用户的权限,

[html]  view plain  copy
  1. mysql> revoke select on mysql.* from kuke;  
参数跟grant的参数一样

查看用户权限:

[html]  view plain  copy
  1. mysql> show grants for kuke;  


三、更新数据库

[html]  view plain  copy
  1. mysql> flush privileges;  

操作完必须更新数据库,否则不会生效。




如果按照以上步骤还不行,有两种可能:

第一:mysql绑定了ip

解决方法:删除配置文件my.cnf中的bind-address参数取消绑定


第二种可能3306端口被防火墙拦截了,参考下面的方法修改配置:

执行 vi /etc/sysconfig/iptables 如图:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

加入这句话就可以了, 注意这句话一定要加在最后一句话的上面. 否则不会生效.

同样如果是其它端口把"3306"换成相应端口即可.

然后重启一下防火墙

service iptables restart


参考:

http://www.cnblogs.com/echo-something/archive/2012/07/31/3306_port.html


版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kexiaoling/article/details/50250825
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值