MySQL的用户如何管理
这篇“MySQL的用户如何管理”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“MySQL的用户如何管理”文章吧。
一、用户管理1.1 新建用户createuser'用户名'@'主机名'[identifiedby[password]'密码'];
用户名就不用解释了,就是我们登录时使用的账号
主机名指定我们创建的用户可以在哪些主机上登陆,可使用IP地址、网段、主机名的形式,本地用户可用localhost,允许任意主机登录可用通配符%来表示。
identified by译为通过…来进行验证,也就是密码,密码分为明文和密文,明文直接就是identified by 加上’密码’即可,密文则是identified by password ‘密码’,多了password关键字。
若使用明文密码,直接输入’密码’,插入到数据库时由Mysql自动加密;若使用加密密码,需要先使用SELECT PASSWORD(‘密码’); 获取密文,再在语句中添加 PASSWORD ‘密文’;若省略“IDENTIFIED BY”部分,则用户的密码将为空。
明文创建用户
密文创建用户
查看mysql库中的user表,强调一点,这个库只有root用户能查看,普通用户是没有权限查询这个库的。
如果我们想要让某一普通用户可以查看这个mysql库,需要使用grant进行授权。注意,授权工作也只能在root用户执行。
远程登陆,即从其他主机远程登录本机数据库
查看mysql.user表
renameuser'旧用户名'@'旧主机名'to'新用户名'@'新主机名';
dropuser'用户名'@'主机名';
1.5 修改用户密码1.修改当前的用户密码
setpassword=password('新密码')
2.修改其他用户密码
setpasswordfor'用户名'@'主机名'=password('新密码');普通用户是无法修改其他用户密码的
vim/etc/my.cnf#修改mysql配置文件[mysqld]......skip-grant-tables#在mysqld模块下添加该配置wq保存退出systemctlrestartmysqld#重启mysql服务mysql#mysql直接登录updatemysql.usersetauthentication_string=password('新密码')whereUser='root';flushprivileges;退出重新登陆切记:修改完后一定将配置文件的skip-grant-tables注释或者删掉,不然再执行一次重启数据库,还是可以无密码登录,很危险
grant,授权,通常用于root用户授予普通用户一些执行权限,比如select,insert,update。
grant权限列表(select|insert|delete|drop|update等等)on数据库名.表名(*表示所有)to'用户名'@'主机名'[identifiedby'密码'];若授权的用户不存在,mysql会先创建一个用户,然后进行授权操作
2.2 查看所授予的权限showgrantsfor'用户名'@'主机名';#查看指定用户的权限showgrants;#查看当前用户权限
2.3 撤销权限revoke权限列表on库名.表名from'用户名'@'主机名';#从用户XXX撤销XX库.XX表的XX操作的权限
以上就是关于“MySQL的用户如何管理”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。