mysql用户创建与授权的简单实例
作者:最强菜鸟 发布时间:2024-01-18 00:20:18
前言
mysql默认安装的时候是有一个root用户,这个用户有最高权限,如果要开放数据库里面的数据给别人使用的话,一般是不会开放root用户给别人的,正常会创建新的用户给别人使用,这个用户的权限就可以自己进行控制了
一、用户
创建用户
命令
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
参数说明:
(1)username:自己想要创建的用户名
(2)host:可以连接到这个数据的主机地址,如果想要任意主机都可以连接到这台服务器的话,可以使用通配符%
(3)password:用户登录的密码
案例
创建用户:zs,密码:123,主机:196.168.64.12
CREATE USER 'zs'@'196.168.64.12' IDENTIFIED BY '123';
创建用户:zs,密码:123,任意主机都可以登录该数据库
CREATE USER 'zs'@'%' IDENTIFIED BY '123';
注意:如果要设置一个用户可以有多个ip进行登录访问的话,只需要重复案例(1)的做法即可,账号和密码都一样,主机ip不同即可
编辑用户
创建好用户后,如果要修改用户密码的话可以进行下面的操作
命令
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
例如
SET PASSWORD FOR 'zs'@'196.168.64.12' = PASSWORD("123456");
如果是当前登录用户可以使用下面的命令
SET PASSWORD = PASSWORD("123456");
删除用户
如果想删除创建的用户可以使用下面的命令
drop user '用户名'@'ip';
例如:
drop user 'zs'@'192.168.92.14';
二、权限
授权
命令
GRANT privileges ON databasename.tablename TO 'username'@'host'
注意:
(1)privileges:用户的操作权限,如SELECT,INSERT,UPDATE,DELETE等,如果要授予所的权限则使用ALL
(2)databasename:数据库名
(3)tablename:数据库表,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*
(4)username:要授权的用户
(5)host:ip
例子
给用户zs,授予数据库test1里面的用户表user增删改查的权限
GRANT ALL ON test1.user TO 'ZS'@'192.169.12.12';
给用户zs,授予数据库test1里面的用户表user查改的权限
GRANT SELECT,UPDATE ON test1.user TO 'ZS'@'192.169.12.12';
给用户zs,授予数据库里面所有表的所有权限
GRANT ALL ON *.* TO 'ZS'@'192.169.12.12';
撤销权限
命令
REVOKE privilege ON databasename.tablename FROM 'username'@'host';
注意:
(1)privileges:用户的操作权限,如SELECT,INSERT,UPDATE,DELETE等,如果要授予所的权限则使用ALL
(2)databasename:数据库名
(3)tablename:数据库表,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*
(4)username:要授权的用户
(5)host:ip
例子
给用户zs,授予数据库test1里面的用户表user查改的权限后,想撤销该权限
REVOKE SELECT,UPDATE ON test1.user TO 'ZS'@'192.169.12.12';
三、其他命令
查看数据库中的所有用户
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
查看数据库中具体某个用户的权限
show grants for 'cactiuser'@'%';
设置与更改用户密码
SET PASSWORD FOR ‘username’@’host’ = PASSWORD(‘newpassword’);
如果是当前登陆用户用:
SET PASSWORD = PASSWORD(“newpassword”);
mysql> SET PASSWORD FOR 'finley'@'%' = PASSWORD("123456");
来源:https://blog.csdn.net/qq_40298902/article/details/123597057


猜你喜欢
- django-allauth是集成的Django应用程序,用于解决网站身份验证,用户的注册登录及账户管理,以及第三方(社交)账户的身份验证。
- 如何在 git 中取消 pycache 文件如果使用 PyCharm 运行代码,会在 Python 脚本所在目录生成 __pycache__
- 1. sys_getloadavg()sys_getloadavt()可以获得系 统负载情况。该函数返回一个包含三个元素的数组,每个元素分别
- python乱序字符串排序什么是乱序字符串排序乱序字符串排序是指一个字符串是另一个字符串的乱序排序,比如apple就是eppal的乱序字符串
- 前言:我的python学习也告一段落了。不过有些,方法还是打算总结一下和大家分享。我整理了使用matplotlib绘制折线图的一般步骤,按照
- 前言:文章里用的Python环境是Anaconda3 2019.7这里测试的程序是找出所有1000以内的勾股数。a∈[1,
- 合并与分割tf.concattf.concat可以帮助我们实现拼接操作.格式:tf.concat( values,
- 写过稍微大型一点 ASP 的人都知道,Session 这个对象真是好用,它可以用来记录使用者私有的资料变量,既安全又方便。但是你真的知道 S
- Cloudinary提供了一个API,用于将图像、视频和任何其他类型的文件上传到云端。上传到Cloudinary的文件通过安全备份和修订历史
- Python信息抽取之乱码解决办法就事论事,直说自己遇到的情况,和我不一样的路过吧,一样的就看看吧信息抓取,用python,beautifu
- 前言本文主要跟大家分享了关于Ubuntu 18.04配置mysql及配置远程连接的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看
- 例子:def re_escape(fn): def arg_escaped(this, *args):&
- 本文实例讲述了python 并发下载器实现方法。分享给大家供大家参考,具体如下:并发下载器并发下载原理from gevent import
- 上面两个简单的Sql,我们从表面理解,查询的最终结果应该是一样的,但实际结果却和我们想象的不一样第一条sql查询的结果有一条数据第二条sql
- 本文实例讲述了Python 26进制计算方法。分享给大家供大家参考。具体分析如下:题目是这样的:假设A=1,B=2,C=3...AA=27,
- -- SQL Server 2000 SELECT a.name AS 字段名, CASE WHEN EXISTS (SELECT 1 FR
- Python异常是在程序执行时发生的错误,可能会导致程序终止运行。在Python中,异常处理是一种机制,它允许开发人员在程序发生异常时捕获、
- 本文实例讲述了Python根据已知邻接矩阵绘制无向图操作。分享给大家供大家参考,具体如下:有六个点:[0,1,2,3,4,5,6],六个点之
- 一、前言想必大家都玩过贪吃蛇的游戏吧:通过操纵蛇的移动方向能够让蛇吃到随机出现的食物,吃到的食物越多,蛇就会变得越长,但如果不小心撞到了自己
- 今天,老师带偶们复习了一下数据库中的分页,总体来说,今天感觉还不错,因为以前学的还没忘。好了,进入正题,首先,说说top的方法top方法其实