设为首页 收藏本站
查看: 1012|回复: 0

[经验分享] mysql的用户管理

[复制链接]

尚未签到

发表于 2018-10-3 09:03:29 | 显示全部楼层 |阅读模式
  mysql的用户管理
mysql的认证有两部分:1、登陆 2、执行sql语句用来表识用户身份的,不是用户名,而是用户名加ip(kyo@1.1.1.1和kyo@2.2.2.2是两个不同身份的人)mysql记录用户密码的不是文件,而是mysql数据库下的user表(mysql.user)。>show databases;>use mysql;>show tables;>select * from user \G; //共六行数据。查看权限等信息默认用户是不是能远程登陆的,因为mysql.user中没有可以远程登陆的用户。添加远程登陆用户>show grants for root@localhost;>grant all privileges on *.* to 'mary'@'192.168.18.254'>权限global(全局)----->database(某个库)---->table(某张表)---->column(某列)global权限会表识在mysql.user表中。database权限表示在mysql.db表中。table权限标记在mysql.tables_priv表中。column权限标记在mysql.colums_priv表中。>flush privileges; //刷新权限,立即生效。>\s  //可以查看登陆的用户身份,使用的哪个库,连接id,连接的服务器。登陆测试***18.254***mysql -u mary -h 192.168.18.42 -p123  //可以登陆,在其他机上不能登陆all privileges //最大权限usage //最小权限,用户只能登陆,不能进行其他任何操作,test库是测试库,任何人都可以进行操作,为了安全,生产环境下,要删除test库。>grant all privileges on *.* to 't1'@'%'>>grant all privileges on vfast.* to 't2'@'%'>>grant all privileges on vfast.a to 't3'@'%'>>grant select on vfast.a to 't4'@'%'>
  >grant usage on *.* to 't5'@'%'>
  grant select,insert,update,delete on student.* to test2@192.168.2.12>>create database vfast;>use vfast;create table a (a int);>insert into a values (1);>flush privileges;>select * from test \G;为了安全,生产环境下,要删除test库>select * from user \G;第四行的user和password都为空,这个是匿名账号,在本地登陆。grant Create,Delete,Insert, select,Update on aixue.* to 'ttt'@'localhost'>取消权限(revoke)针对t1的所有库,所有表,取消所有权限>revoke all privileges on *.* from 't1'@'%';>show grants for 't1'@'%'; //查看具体权限,权限变成usage>revoke select,insert on test.* from 't1'@'%'; //拿走部分权限>flush privileges;删除远程登陆用户>drop user 't1'@'%';修改密码1、(主要)update mysql.user set password=password('456') where user='t5'; //修改T5密码,密码是加密的,所以用password()函数加密,t5是用户名。>flush privileges;2、>grant usage on *.* to 't5'@'%'>假如忘记了登录mysql的root用户的密码#/etc/init.d/mysqld stop手动启动数据库#mysqld_safe --skip-grant-tables --skip-networking &#mysql //登录(这种情况下,就不能使用grant来修改密码,只能用update来修改密码)>update mysql.user set password=password('123456') where user='root'; //重新修改密码#/etc/init.d/mysqld restart //重启数据库skip-grant-tables //跳过赋权表skip-networking //跳过网络#mysql -u -p //也可以登录数据库#\s  //查看当前登录用户(-p@localhost)这个是匿名账号删除匿名账号记录>delete from mysql.user where user='';>flush privileges;

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-608312-1-1.html 上篇帖子: MySQL 5.6.12 安装 下篇帖子: MySQL Daemon failed to start”
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表