目录

一.视图

1.1 概念

1.2 使用

1.3 视图的规则和限制

二.用户管理

2.1 用户

2.1.1 用户信息

2.1.2 创建用户

2.1.3 删除用户

2.1.4 修改密码

2.2 数据库权限

2.2.1 给用户授权

2.2.2 回收权限


一.视图

1.1 概念

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

简单来说,一个表的中的数据太大了,通过查询条件来建立一张子表。修改子表的数据会影响主表,修改主表的数据会影响到子表。

1.2 使用

  • 创建视图

在当前数据库中形成一个新的表结构。

语法:create  view  视图名  as select .....

案例:

在当下数据库形成新的表结构:

  • 修改视图

修改视图,基表也会发生变化。

  • 修改基表

修改基表,视图也会发生变化。

  • 删除视图

语法:drop  view  视图名;

1.3 视图的规则和限制

  • 和表一样,必须唯一命名。

  • 创建视图数无限制,但要考虑复杂查询创建为视图之后的性能影响。

  • 视图不能添加索引,页不能有关联的触发器或者默认值。

  • 视图可以提高安全性,必须有足够的访问权限。

  • order by用在视图中。

  • 视图可以和表一起使用。

二.用户管理

        我们现在使用的是root用户,root用户权限太大。可以操作所有的库,由于权限大,导致风险过大。如果进行了误操作,导致损失严重。

于是就需要使用MySQL的用户管理。一个用户只能操作特定的库,并且也只具有特定的权限。

2.1 用户

2.1.1 用户信息

MySQL中的用户都保存在系统数据库MySQL的user表中。

字段解释:

  • host:表示这个用户可以重哪个主机登录。localhost,表示只能从本机登录。%表示从任意远端登录。
  • user:用户名
  • authentication_string:用户密码,通过password函数加密的
  • *_priv:用户拥有的权限。

2.1.2 创建用户

注意:创建用户需要root来做。

语法:create  user  '用户名'@'登录主机/ip'  identified  by '密码';

案例:

2.1.3 删除用户

语法:drop user '用户名'@'主机名';

案例:

2.1.4 修改密码

  • 自己改自己的密码

语法:set  password=password('新的密码');(该语法在MySQL8.0以上已经不适用)

  • root用户指修改指定用户密码

语法:set  password  for  '用户名'@'主机名'=password('新的密码');(该语法在MySQL8.0以上已经不适用)。

  • root修改指定用户密码(8.0版本以上)

语法:alter user '用户名'@'主机名' identified  with  mysql_native_password by '新密码';

2.2 数据库权限

root用户拥有所有的权限。

2.2.1 给用户授权

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

语法:grant  权限列表  on  库.对象名(表名)  to  '用户名'@'主机名        '  [identified  by  '密码'];

说明:

  • 权限列表,多个权限用逗号隔开。

grant  select  on ......

grant  select,delete, create  on......

grant  all [privileges]  on......  --表示赋予该用户在该对象上的所有权限

  • *.*:表示本系统中的所有数据库的所有对象(表)。
  • 库.*:表示某个数据库中的所有数据对象。
  • identified  by 可选。如果用户存在,赋予权限的同时修改密码,如果该用户不存在,就是创建用户。

案例:

  • 授权

  • 使用权限

  • 查看用户现有的权限

注意:如果发现赋权后没有生效,执行如下命令:

flush  privileges;

2.2.2 回收权限

语法:revoke 权限列表 on 库名.对象  from '用户名'@'主机号';

MySQL如何创建视图和用户相关推荐

  1. mysql 无法创建视图_mysql无法创建视图怎么办

    mysql无法创建视图的解决办法: 基本语法 可以使用 CREATE VIEW 语句来创建视图. 语法格式如下: CREATE VIEW AS 语法说明如下. :指定视图的名称.该名称在数据库中必须是 ...

  2. 在MySQL中创建视图的X种方式

    在本教程中,您将学习如何使用CREATE VIEW语句在MySQL中创建视图. CREATE VIEW语句简介 要在MySQL中创建新视图,请使用CREATE VIEW语句. 在MySQL中创建视图的 ...

  3. mysql oracle创建视图索引吗_Oracle视图,索引,序列

    什么是视图[View] (1)视图是一种虚表 (2)视图建立在已有表的基础上, 视图赖以建立的这些表称为基表 (3)向视图提供数据内容的语句为 SELECT 语句,可以将视图理解为存储起来的 SELE ...

  4. mysql中创建视图、索引

    数据库的三级模式两级映射: 存储文件------>基本表----->视图 内模式   ------->模式   ------>外模式 一.视图 1.什么是视图: 视图是从一个或 ...

  5. 如何在MySQL中创建视图

    CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] VIEW view_name [(column_list)] AS ...

  6. 详解MySQL information_schema数据库常用的表信息以及各表对应的字段信息;以及如何登录mysql和创建视图

    详解information_schema数据库 登录mysql 查询information_schema信息 information_schema常用数据表 TABLES 查询tables table ...

  7. MySQL中创建视图并授权

    开发过程中,会涉及到将数据库表给第三方公司使用,基于这样的场景,使用视图是较合理的,一方面可以控制显示字段,同时也是可以设置权限. 创建用户 create user `用户名`@`%` identif ...

  8. mysql. Oracle创建视图,Navicat 教程:Oracle 视图

    Navicat for Oracle 视图用于访问一组关联(表),就像一个单一的表,并限制访问.视图也可以用来限制访问行(一个特定表的子集).点击"视图"按钮即可打开视图对象列表. ...

  9. mysql创建视图sql_SQL视图介绍-如何在SQL和MySQL中创建视图

    mysql创建视图sql 什么是SQL视图? (What is a View in SQL?) A View is a database object that presents data exist ...

  10. mysql中创建视图语法错误_mysql - 使用过程MySQL创建视图时出错 - 堆栈内存溢出

    尝试使用过程创建视图时出现问题. 我必须这样做,因为我需要在MySQL中发挥作用,将表的行转换为另一个表的列. 该查询效果很好,但是当我将其放在" CREATE VIEW"语句中时 ...

最新文章

  1. GT Transceiver的总体架构梳理
  2. SharePoint判断页面(或WebPart)是否处于编辑模式.
  3. 在centos6.5安装MariaDB(mysql)
  4. 径向基函数插值(2)一维数据的插值
  5. 关于5G技术和5G技术即将面临的各项挑战
  6. spring boot配置logback日志
  7. json web token没有哪个成分_SpringBoot 2.1.4集成JWT实现token验证
  8. Python 计算文件夹大小、文件大小
  9. UI素材模板|数据可视化APP界面
  10. oracle 后台进程管理,Oracle background processes后台进程
  11. Python多线程及其使用方法
  12. 【293天】我爱刷题系列052(2017.11.25)
  13. 微擎后台报错,关闭错误信息
  14. java输入其他字符提示_Eclipse输入任意字母或指定字符出现提示框
  15. CS231n李飞飞计算机视觉 迁移学习之物体定位与检测上
  16. 批量复制文件夹的批处理.bat命令
  17. oracle期末试题及答案,oracle期末考试试题及答案
  18. 腾讯地图获取全国行政区划检索列表Demo
  19. linux系统优化步骤,优化Linux系统的12个步骤
  20. 9个offer,12家公司,35场面试,计算机应届毕业生求职之路

热门文章

  1. 关于解决“无法定位程序输入点于动态链接库”问题的思路
  2. 字节(B)、千字节(KB)、兆字节(MB)、积 (GB)字节之间的换算
  3. 20145322 Exp5 MS08_067漏洞测试
  4. 错误异常too many open files解决方法
  5. Source Insight4.0的在整个工程中查找内容
  6. win10插上耳机还外放(win10插上耳机还外放怎么设置)
  7. centos7安装python开发环境(python3,postgresql,sublime,supervisor)
  8. 大数据常用命令-超全
  9. 219-6-3Google浏览器书签备份
  10. 9种项目管理方法让工作变得简单:PM的完整指南