欢迎来到代码驿站!

Mysql

当前位置:首页 > 数据库 > Mysql

详解mysql权限和索引

时间:2021-10-13 09:10:47|栏目:Mysql|点击:

mysql权限和索引

mysql的最高用户是root,

我们可以在数据库中创建用户,语句为CREATE USER 用户名 IDENTIFIED BY '密码',也可以执行CREATE USER 用户名 语句来创建用户,不过此用户没有密码,可以将用户登录后进行密码设置;删除用户语句为DROP USER 用户;更改用户名的语句为RENAME USER 老用户名 to 新用户名;

修改密码语句为set password=password('密码');

高级用户修改别的用户密码的语句为SET PASSWORD FOR 用户=PASSWORD('密码'); 。

image

关于赋予权限的操作有以下几种,

查看用户权限语句为show grants for 用户;

赋予用户权限语句为grant 权限 on . to 用户,第一个号代表数据库,第二个号代表要赋予权限的表;

取消用户权限的语句REVOKE CREATE ON . FROM 用户;刷新的语句是FLUSH PRIVILEGES。

image

mysql的索引可以让我们对数据库中数据的查找提供更快的速度,我们在编程的时候,条件上使用类那个列,就可以将查询涉及到的列设计为索引。

索引有普通索引,设为普通索引对列的数据没有影响,但是对数据的查找速度进行了优化;唯一索引设为唯一索引的列中的值是唯一的,同样也是对数据的查找速度进行了优化;主键索引就是设为主键列会自动添加主键索引,一个表只能有一个主键列,此列不允许有空值,一般是在建表的时候同时创建主键索引;全文索引主要用来查找文本中的关键字,而不是直接与索引中的值相比较。fulltext索引跟其它索引大不相同,它更像是一个搜索引擎,而不是简单的where语句的参数匹配。fulltext索引配合match against操作使用,而不是一般的where语句加like。它可以在create table,alter table ,create index使用,不过目前只有char、varchar,text 列上可以创建全文索引。值得一提的是,在数据量较大时候,现将数据放入一个没有全局索引的表中,然后再用CREATE index创建fulltext索引,要比先为一张表建立fulltext然后再将数据写入的速度快很多;还有组合索引,这种索引可以将两个列联合起来作为条件一起查查询,单独一个列作为条件查询不会有索引的效果。

创建索引的语句为CREATE 索引种类[不写为普通索引] INDEX 索引名称 ON 表(列)。

删除索引语句为DROP INDEX 索引名称ON 表。

索引的缺点:

1.虽然索引大大提高了查询速度,同时却会降低更新表的速度,如对表进行insert、update和delete。因为更新表时,不仅要保存数据,还要保存一下索引文件。

2.建立索引会占用磁盘空间的索引文件。一般情况这个问题不太严重,但如果你在一个大表上创建了多种组合索引,索引文件的会增长很快。索引只是提高效率的一个因素,如果有大数据量的表,就需要花时间研究建立最优秀的索引,或优化查询语句。

image

上一篇:mysqldump备份还原和mysqldump导入导出语句大全详解

栏    目:Mysql

下一篇:MySQL DATEDIFF函数获取两个日期的时间间隔的方法

本文标题:详解mysql权限和索引

本文地址:http://www.codeinn.net/misctech/179839.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有