首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL用户详解(mysql.user)

MySQL是一个多用户管理数据库,可以为不同用户分配不同权限,分为root用户和普通用户,root用户为超级管理员,拥有所有权限,而普通用户拥有指定权限。...MySQL是通过权限来控制用户对数据库访问,权限存放在mysql数据库中,主要权限有以下几个:user,db,host,table_priv,columns_priv和procs_priv,先带你了解是...用户列(用户连接MySQL数据库需要输入信息) Host:主机名,双主键之一,值为%时表示匹配所有主机。User:用户名,双主键之一。Password:密码名。...DELETE命令删除现有数据 Update_priv 确定用户是否可以通过UPDATE命令修改现有数据 Create_priv 确定用户是否可以创建新数据库和 Drop_priv 确定用户是否可以删除现有数据库和...Reload_priv 确定用户是否可以执行刷新和重新加载MySQL所用各种内部缓存特定命令,包括日志、权限、主机、查询和重新加载权限 Shutdown_priv 确定用户是否可以关闭MySQL

2.8K20

用户、角色、权限关系(mysql)

一,各个表格 1、用户 CREATE TABLE `t_user` ( `id` varchar(40) NOT NULL, `username` varchar(20) NOT NULL...’u1′,’1’), (‘2′,’u2′,’2’), (‘3′,’u3′,’3’), (‘4′,’u11′,’1’), (‘5′,’u22′,’2’), (‘6′,’u33′,’3’); 小说网站,用户设计...用户有着“读者”,“作者”和“管理员”角色,角色有不同权限,如小说收藏,小说发布和广告发布 假定,用户和角色是一对一关系,即一个用户只有一个角色;角色和用户关系是一对多关系,一个角色对应着多个用户。...=1 AND r.id=ur.role_id AND ur.user_id=u.id; 2、查询某用户对应角色。...这里用户和角色是一对一关系,通过先查询用户角色,再查询权限。(单行单例子查询) SELECT p.

5.6K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    探秘Oracle空间、用户之间关系

    Think about it,在SQL Server或者MySQL中,一般情况下(暂不考虑多租户等特殊情况),一个项目对应DBMS中一个数据库,连接字符串中是用“用户名+密码+数据库名”来唯一标识数据库...,一个用户可以管理多个数据库;而连接oracle中字符串主要是用户名+密码来标识数据库,即一个用户管理一个方案(方案就是某用户拥有的所有的数据库对象逻辑集合,可以看做是SQL Server或MySQL...通俗来说,除了数据库地址,一个程序连接MySQL或SQLServer需要提供用户名、密码和它需要连接数据库名,连接Oracle则需要提供用户名和密码即可。...Oracle中建立空间、用户 ----   下面通过一个在oracle中建立方案例子来说明oracle中表空间、用户之间关系。   ...一个方案对应一个项目,对应一个用户;每个用户可以管理多个空间,每个空间由一个或多个物理文件(.dbf)组成,一个用户可以分配多个空间,但只能有一个默认空间,每张可以存在于一个或多个空间中(比如图中

    2.5K20

    MySql约束

    中一定要有各种约束,通过约束,让我们未来插入数据库数据是符合预期。约束本质是通过技术收到逼迫程序员插入正确数据,反过来,站在mysql视角,凡是插入进来数据,都是符合数据约束。...> 默认值default 默认值:某一种数据会经常性出现某个具体值,可以在一开始就指定好,在需要真实数据时候,用户可以选择性使用默认值。...into t13(name) values ('李四'); deault:如果设置了,用户将来插入,有具体数据就用,没有就默认 如果我们没有明确指定一列要插入,用是default,如果建中,对应列默认没有设置...当用户想插入时候,无非就是NULL或者合法数据,当用户忽略这一列时候,使用默认值(前提是设置了默认值),如果没有设置,直接报错。...建立外键本质其实就是把相关性交给mysql去审核了,提前告诉mysql之间约束关系,那么当用户插入不符合业务逻辑数据时候,mysql不允许你插入。

    20930

    MySQL之间关系

    之间关系 1 foreign key 2 则1多条记录对应2一条记录,即多对一 利用foreign key原理我们可以制作两张多对多,一对一关系 多对多: 1多条记录可以对应...2一条记录 2多条记录也可以对应1一条记录 一对一: 1一条记录唯一对应2一条记录,反之亦然 分析时,我们先从按照上面的基本原理去套,然后再翻译成真实意义,就很好理解了...1、先确定关系 2、找到多一方,把关联字段写在多一方 一对多  多对一或者一对多(左边多条记录对应右边唯一一条记录)  需要注意: 1.先建被关联,保证被关联字段必须唯一。...(只有管理员才可以登录,一个管理员对应一个用户) 管理员关联用户 图片 创建 先建被关联 create table user( id int primary key auto_increment,...,用户组,主机 创建三张 -- 用户 create table user (id int primary key auto_increment,username varchar(20) not null

    3.5K10

    MySQL操作

    #前言:我们说过,库相当于一个文件夹,表相当于文件夹里一个个文件,表里面的一条记录相当于一行内容,一条记录有对应标题,称为字段 #直观 ?...#id,name,sex,age为字段,其余一行内容称为一条记录 1.建 #创建表语法格式 Create table ( , ….....:   create table 表示创建固定关键字,student为名,有四个字段,分别表示   id:学号列, int:数字类型, 4:长度为4, not null:不为空值...字节 极大文本数据 #创建时候指定存储引擎 mysql> create table test ( -> id int(4) not null auto_increment,...#语法格式:drop table #例子:删除db库里面的student mysql> use db; Database changed mysql> show tables; #查看库中

    4.7K40

    MySQL约束

    约束 约束:中一定要有各种约束,通过约束,让我们未来插入数据库数据是符合预期。约束本质是通过技术手段,倒逼用户,插入正确数据。...反过来,在 mysql 角度,凡是插入进来数据,都是符合数据约束!约束最终目的就是保证数据完整性和可预期性。因此我们需要更多约束条件!...二、默认值 默认值:某一种数据会经常性出现某个具体值,可以在一开始就指定好,在需要真实数据时候,用户可以选择性使用默认值。默认值关键字为 default....当用户忽略了这一列时候,如果设置了 default,就是用默认值,如果没有设置,就直接报错,因为有 not null 约束。...建立外键本质其实就是把相关性交给 mysql 去审核了,提前告诉 mysql 之间约束关系,那么当用户插入不符合业务逻辑数据时候,mysql 不允许你插入。

    14710

    MYSQL约束

    二、默认值 默认值:某一种数据会经常性出现某个具体值,可以在一开始就指定好,在需要真实数据时候,用户可以选择性使用默认值。...索引: 在关系数据库中,索引是一种单独、物理对数据库中一列或多列值进行排序一种存储结 构,它是某个中一列或若干列值集合和相应指向中物理标识这些值数据页逻辑指针清单。...索引作用相当于图书目录,可以根据目录中页码快速找到所需内容。 索引提供指向存储在指定列中数据值指针,然后根据您指定排序顺序对这些指针排序。...这样可以使对应于SQL语句执行得更快,可快速访问数据库特定信息 七、唯一键 一张中有往往有很多字段需要唯一性,数据不能重复,但是一张中只能有一个主键:唯一键就可以解决中有多个字段需要唯一性约束问题...;插入学生班级号不能在班级中没有。

    24540

    MySQL约束

    约束本质: 通过技术手段倒逼程序员插入正确数据。反过来站在mysql视角,凡是插入进来数据,都是符合数据约束。 约束最终目标: 保证数据完整性和可预期性。 为什么数据库这么严格?...数据库作为维护用户数据最后一道防线,必须要保证数据库数据是满足预期,因此数据库约束必须严格。为了更好约束,就需要更多约束条件,这也是这一节内容。...二.非空约束 1.NULL与’ '比较 在MySQL数据类型已经说过,这二者是不同,NULL代表什么都没有,而' '代表一个空串。 在select语句中,NULL不会参与到相应计算操作中。...如果将学生和班级结合成一个,那么在插入数据时,就需要插入大量字段造成没必要冗余。若将其分成两个,那么通过一一对应映射,来减少没必要数据。 为什么会造成没必要冗余?...在两个前提下,若要新增一名学生信息,只需要插入三个字段;若合并成一个,那么就需要插入3+2-1=4个字段,并且我们知道组合起来情况也会更多,两个合并结果就是数据位置上相乘,比如: 两个

    21950

    Django用户创建(四)

    字符串 是 用户输入密码 password_repeat 字符串 是 用户输入重复密码 email 字符串 是 用户输入邮箱地址 注:由于是post请求,在向后端发起请求时,需要附带csrf...:(在django中,根据代码中类自动生成数据库也叫--code first) ORM:Object Relational Mapping(关系对象映射) 类名对应------》数据库中名 类属性对应...,不用管黑盒子是MySQL、Oracle、sqlite还是其他乱七八糟数据库,它都会按照我们需求输出正确操作。...abstract = True 所以我们用户model文件就是: from django.db import models from utils.models import...数据库展示 以上就完成了用户创建,不过里面的一些约束条件什么感觉还是有点问题,但是应该不影响正常使用(无法应对破坏性测试)。

    2.2K60

    MySQL用户管理

    默认情况下,root用户是享有最高权限超级用户,可以使用包括create,drop,insert等操作,但是我们也需要一些普通用户来进行管理,接下来就让我们对号入座,来进行如何创建用户,授权用户,和删除用户等操作...*:目标:库和 to username@localhhost :用户名和客户端主机 identified by 'passwd':用户密码 #例子: #创建test用户,对db库具备所有权限,允许从localhost...,使用,分隔 #例子:创建guoke用户时候给insert,select,create权限 mysql> create user 'guoke'@'localhost' identified by '...affected (0.00 sec) 4.企业生产环境用户授权 mysql> grant select,insert,update,delete on db.* to 'li'@'localhost...=0 10.找回丢失mysql密码 #我们可能会忘记或丢失用户登录密码,导致不能进行正常登录,下面就让我们来实践来找回丢失密码 #1.首先停止mysql [root@cots3 ~]# systemctl

    2.3K30

    mysql分区_MySQL分区分

    2、MySQL是将一个大按照一定规则分解成多张具有独立存储空间实体表,每个都对应三个文件,MYD数据文件,.MYI索引文件,.frm结构文件。...将单个数据库进行拆分,拆分成多个数据,然后用户访问时候,根据一定算法(如用hash方式,也可以用求余(取模)方式),让用户访问不同,这样数据分散到多个数据中,减少了单个数据访问压力...水平拆分原则,通常情况下,我们使用hash、取模等方式来进行拆分 比如一张有400W用户users,为提高其查询效率我们把其分成4张users1,users2,users3,users4 通过用...ID取模方法把数据分散到四张内Id%4= [0,1,2,3] 然后查询,更新,删除也是通过取模方法来查询 部分业务逻辑也可以通过地区,年份等字段来进行归档拆分; 进行拆分后,这时我们就要约束用户查询行为...比如我们是按年来进行拆分,这个时候在页面设计上就约束用户必须要先选择年,然后才能进行查询。 3、利用merge存储引擎实现分 注:只有myisam引擎才可以利用merge存储引擎实现分

    10.9K20

    oracle创建用户 授权,oracle创建用户及授权创建

    –================================ –Oracle 用户、对象权限、系统权限 –================================ 建立空间和用户步骤:...sequence,create materialized view to 用户; grant unlimited tablespace to 用户;//授予不限制空间 grant select any...table to 用户;//授予查询任何 grant是关键字,select any table是权限,to后面是用户账号 [sql] view plaincopy 空间 建立空间(一般建N个存数据空间和一个索引空间...drop tablespace DEMOSPACE including contents and datafiles [sql] view plaincopy 用户权限 授予用户使用空间权限: alter...user 用户名 quota unlimited on 空间; 或 alter user 用户名 quota *M on 空间; 完整例子: [sql] view plaincopy –空间 CREATE

    4K10

    MySQL 临时与内存区别

    MySQL 中,Temporary Table(临时)和 Memory Table(内存)是两种不同类型,它们有一些重要区别和用途。...可以使用 CREATE TEMPORARY TABLE 语句创建临时。 临时可以存储在磁盘上,也可以存储在内存中,具体取决于 MySQL 配置和存储引擎。...内存适用于需要快速读写操作场景,但需要注意是,内存数据会在 MySQL 服务重启时丢失,因为数据存储在内存中。...3.区别 主要区别在于存储和生命周期: 存储: 临时存储位置可以是磁盘或内存,而内存数据存储在内存中。...生命周期: 临时生命周期限于会话或连接,会话结束时自动删除;而内存数据在 MySQL 服务重启时会丢失。 4.小结 您需要根据业务需求来选择使用临时还是内存

    31230

    MySQL - 高效设计MySQL

    想要发挥 MySQL 最佳性能,需要遵循 3 个基本使用原则 首先是需要让 MySQL 回归存储基本职能:MySQL 数据库只用于数据存储,不进行数据复杂计算,不承载业务逻辑,确保存储和计算分离...一旦事务回滚,会导致资源占用时间过长 大 SQL,复杂 SQL 意味着过多关联,MySQL 数据库处理关联超过 3 张以上 SQL 时,占用资源多,性能低下 大批量,意味着多条 SQL...必须要用时,尽量与主业务分离,减少对这类字段检索和更新 ---- 基本设置规则 必须指定默认存储引擎为 InnoDB,并且禁用 MyISAM 存储引擎,随着 MySQL 8.0 版本发布,所有的数据字典都已经转换成了...避免普遍简单、有歧义名称。 用户中,用户字段为 UserName 比 Name 更好。 布尔型字段,以助动词(has/is)开头。...用户是否有留言 hasmessage,用户是否通过检查 ischecked 等。

    3.3K12

    mysql命令之对用户,库,操作--基础教程(三)

    创建用户: 进入在root用户进行操作: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456'; 授权: 授权dog用户对mytest1数据库所有进行查询...撤销用户权限 revoke select ON mytest1.* FROM 'dog'@'localhost'; 用户就不能对这个进行查询了; 删除用户: DROP USER 'username...'@'host'; ------------------------- 登陆数据库: -u后面是用户mysql -u root -p不要加分号,也不要紧跟后面输入密码 回车之后输入密码 --...mytest1一样; create database mytest2; 之后退出数据库,在终端输入: mysqldump mytest1 -u dog -p > yourDatabase.sql 输入密码 mysql...[ASC [DESC]] -------------------------------------- 导出数据 比如把数据库中test3,导出 select * from test3 into outfile

    870110

    新零售mysql设计(部门 职位 员工 角色 用户

    角色表解析 数据 用户 用户表解析: 数据 注意 sql 部门: 、CREATE table t_dept( id int unsigned PRIMARY key AUTO_INCREMENT...是不是得有一个工号,代表你在这个企业中身份。是不是员工得有你姓名。性别 是否婚否 学历是什么?...,关联时候快一点啦....一个用户想要登录新零售系统用户哈。是不是得有用户名+密码 目前状态:可用还是不可用。 注意: 用户:是不是得关联角色role_id 代表这个用户所代表角色。比如总经理。...用户id是不是也得有.代表关联是哪一个员工,员工在员工中.对吧。添加时间修改时间是不是也得有. 添加索引目的在于搜索快一点. 数据 注意 什么时候为·null,什么时候为not null呢?

    1.2K90

    MySQL之间关系详解

    ,子表employee中对应记录跟着删 mysql> delete from department where id=3; mysql> select * from employee; +----+-...,子表employee中对应记录跟着改 mysql> update department set id=22222 where id=2; mysql> select * from employee;...分析步骤: #1、先站在左角度去找 是否左多条记录可以对应右一条记录,如果是,则证明左一个字段foreign key 右一个字段(通常是id) #2、再站在右角度去找 是否右多条记录可以对应左一条记录...用户组,主机,主机组 #用户 create table user( id int not null unique auto_increment, username varchar(20) not...insert into user(username,password) values ('root','123'), ('egon','456'), ('alex','alex3714') ; #用户

    2K30
    领券