MySQL视图用户管理

文章目录

  • 视图
  • 视图的规则
  • 用户
    • 用户信息
    • 创建用户
    • 删除用户
    • 修改密码
  • 用户权限
    • 给用户授权
    • 回收权限

视图

视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表的数据变化也会影响到视图

也就是有时候一张表的列过多,不方便查看,我们就可以选取其中的某些列去生成一张虚拟表,这个虚拟表和原表之间是有着关联的,具体看一下如图现象

image-20230907173806506

可以看到使用了 emp 表的empno和ename列去创建了一个视图,这个视图虽然是虚拟的但是也可以进行CRUD,并且原表更新数据后视图也会跟着更新,而视图更新后原表也会随着更新

image-20230907174354223

视图的规则

  1. 与表一样,必须唯一命名(不能出现同名视图或表名)
  2. 创建视图数目无限制,但要考虑复杂查询创建为视图之后的性能影响
  3. 视图不能添加索引,也不能有关联的触发器或者默认值
  4. 视图可以提高安全性,必须具有足够的访问权限
  5. order by 可以用在视图中,但是如果从该视图检索数据 select 中也含有 order by ,那么该视图中的 order by 将被覆盖
  6. 视图可以和表一起使用

用户

用户信息

MySQL中的用户,都存储在系统数据库mysql的user表中

select * from user \G;

image-20230907184058271

其中:

host: 表示这个用户可以从哪个主机登陆,如果是localhost,表示只能从本机登陆
user: 用户名
authentication_string: 用户密码通过password函数加密后的
*_priv: 用户拥有的权限

创建用户

create user '用户名'@'登陆主机/ip' identified by '密码';

可能实际在设置密码的时候,因为mysql本身的认证等级比较高,一些简单的密码无法设置,会爆出如下报错:
– ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

可自行搜索解决方案

ip如果设为 % 代表任何主机都可以登陆

删除用户

drop user '用户名'@'主机名';

修改密码

普通用户修改本身密码

set password=password('新的密码');

root用户修改指定用户密码

set password for '用户名'@'主机名'=password('新的密码');

用户权限

权限列表:

权限上下文
create._priv数据库、表、索引
drop._priv数据库、表
grant option._priv数据库、表、保存的程序
references._priv数据库、表
alter._priv
delete._priv
index._priv
insert._priv
select._priv
update._priv
create view._priv视图
show view._priv视图
alter routine._priv保存的程序
create routine._priv保存的程序
execute._priv保存的程序
file._priv服务器主机上的文件访问
create temporary tables._priv服务器管理
lock tables._priv服务器管理
create user._priv服务器管理
process._priv服务器管理
reload._priv服务器管理
replication client._priv服务器管理
replication slave._priv服务器管理
show databases._priv服务器管理
shutdown._priv服务器管理
super._priv服务器管理

给用户授权

刚创建的用户没有任何权限。需要给用户授权

grant 权限列表 on.对象名 to '用户名'@'登陆位置';

其中 all 代表所有权限,多个权限用逗号分开

. : 代表本系统中的所有数据库的所有对象(表,视图,存储过程等)
库.
: 表示某个数据库中的所有数据对象(表,视图,存储过程等)
*

如果发现赋权限后,没有生效,执行如下指令:

flush privileges;

回收权限

revoke 权限列表 on.对象名 from '用户名'@'登陆位置';

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/101771.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2.6 PE结构:导出表详细解析

导出表(Export Table)是Windows可执行文件中的一个结构,记录了可执行文件中某些函数或变量的名称和地址,这些名称和地址可以供其他程序调用或使用。当PE文件执行时Windows装载器将文件装入内存并将导入表中登记的DLL文件一并装入&…

HCIA自学笔记01-传输介质

通信网络除了包含通信设备本身之外,还包含连接这些设备的传输介质,如同轴电缆、双绞线和光纤等。不同的传输介质具有不同的特性,这些特性直接影响到通信的诸多方面,如线路编码方式、传输速度和传输距离等。 简单网络:…

数据分享|WEKA信贷违约预测报告:用决策树、随机森林、支持向量机SVM、朴素贝叶斯、逻辑回归...

完整报告链接:http://tecdat.cn/?p28579 作者:Nuo Liu 数据变得越来越重要,其核心应用“预测”也成为互联网行业以及产业变革的重要力量。近年来网络 P2P借贷发展形势迅猛,一方面普通用户可以更加灵活、便快捷地获得中小额度的贷…

2023高教社杯 国赛数学建模B题思路 - 多波束测线问题

1 赛题 B 题 多波束测线问题 单波束测深是利用声波在水中的传播特性来测量水体深度的技术。声波在均匀介质中作匀 速直线传播, 在不同界面上产生反射, 利用这一原理,从测量船换能器垂直向海底发射声波信 号,并记录从声波发射到信…

技术面试与HR面:两者之间的关联与区别

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

Jetpack Compose 教程

一、简介 Jetpack Compose 是用于构建原生 Android 界面的新工具包。它使用更少的代码、强大的工具和直观的 Kotlin API,可以帮助您简化并加快 Android 界面开发。 在本教程中,您将使用声明性的函数构建一个简单的界面组件。您无需修改任何 XML 布局&am…

提高使用VS Code工作效率的技巧

提高使用VS Code工作效率的技巧 时间轴视图:本地源代码控制 时间轴视图为我们提供了内置的源代码控制。 我们中的许多人都知道 Git 和其他源代码控制工具有多么有用,它们可以帮助我们轻松跟踪文件更改并在需要时恢复到之前的状态。 因此,…

mac 查看端口占用

sudo lsof -i tcp:port # 示例 sudo lsof -i tcp:8080 杀死进程 sudo kill -9 PID # 示例 sudo kill -9 8080

如何使用聊天GPT自定义说明

推荐:使用 NSDT场景编辑器 快速搭建3D应用场景 OpenAI ChatGPT正在席卷全球。一周又一周,更新不断提高您可以使用这种最先进的语言模型做什么的标准。 在这里,我们深入研究了OpenAI最近在ChatGPT自定义指令上发布的公告。此功能最初以测试版…

面试中的时间管理:如何在有限时间内展示最大价值

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

Deep Java Library(四)使用DJL Serving部署JAVA模型 For Windows

1.下载Windows版DJL Serving Windows版DJL Serving下载地址: https://publish.djl.ai/djl-serving/serving-0.23.0.zip 下载下来是一个zip压缩包,大约50M左右,目前最新版本为0.23.0 2.安装DJL Serving 解压serving-0.23.0.zip后目录如下 …

【嵌入式开发 Linux 常用命令系列 7.1 -- awk 过滤列中含有特定字符的行】

文章目录 awk 过滤列中字符串 上篇文章:嵌入式开发 Linux 常用命令系列 7 – awk 常用方法详细介绍 awk 过滤列中字符串 cat test.log | awk -F $31 {print $0}说明: -F 以什么分隔列,这里是以空格为分隔符;$3代表第3列;$3…