数据库 ---39 索引 创建用户及授权 数据备份

Posted sc-1067178406

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库 ---39 索引 创建用户及授权 数据备份相关的知识,希望对你有一定的参考价值。

一.索引 

  1.索引的数据结构( B+树 类型)

技术分享图片

    B+树  的性质 a.索引字段要尽量的小

          b.索引的最左匹配特性

技术分享图片

 

 技术分享图片

 

  1.聚焦索引 (主键索引)  primary  key(PRI)

      加速查找   不为空  不重复

    ①创建时添加

     create table t1 ( id int primary key,.....);

     create table t1 (id int ,primary key(id) );

    ②创建完之后添加 

     alter table 表名 add primary key(id);

    ③删除主键索引

     alter table 表名 drop primary key;

  2.辅助索引 (普通索引)(MUL)

      加速查找

    直接查找 索引字段时 既是 覆盖索引

    查找其他字段时   为 回表操作(先找到主索引和辅助索引字段

      再按照主索引方式查找)

   ①创建时添加

    create table t1(id int,index index_name(id);

   ②创建完之后添加

    alter table s1 add index index_name(id);

    create index index_name on s1(id);

   ③删除

    alter table s1 drop index u_name;

    drop index 索引名 on 表名字;

  3.唯一索引   unique

    加速查找  不重复 

   ①创建时添加

    create table t1(id int unique,...);

    create table t1(id int,unique key uni_name(id) );

   ②创建之后添加

    alter table s1 add unique key u_name(id);

   ③删除

    alter table s1 drop index u_name;

  4. 联合索引  

   将 要联合的字段放在一起

  技术分享图片

 

 技术分享图片

   5.索引未命中情况

   ①1 范围问题,或者说条件不明确,条件中出现这些符号或关键字:

      >、>=、<、<=、!= 、between...and...、like、

   ②2 尽量选择区分度高的列作为索引,

    区分度的公式是count(distinct col)/count(*)

   ③  四则运算  写在后面 不可在字段上运算

技术分享图片

 

   ④ and 和 or

技术分享图片

   ⑤ 最左前缀匹配原则

    建立索引时将关于范围比较的字段放在后面  ,查询快

   6.查询优化神器 ——explain

技术分享图片

 

 

二.创建用户和授权

技术分享图片

技术分享图片

 

 技术分享图片

 

 三.数据库备份和还原

  注:是在cmd 窗口下执行的语句,而不是mysql

  1。库备份

  ①.导出:

    技术分享图片

     导入:

    技术分享图片

  ②.  加上  -B参数

   导出:

    技术分享图片

   导入:

    技术分享图片

  ③。多个库备份

    a.会导出一个文件

     技术分享图片

    b.多个时可用for循环

    技术分享图片

  2.表备份

    ①备份单个表

    技术分享图片

    ②备份多个表

    技术分享图片

四。 高可用 (自动切换数据库技术)

  ①heartbeat + drbd    技术

  ② keepalive + lvs    技术

  ③ k8s + docker   技术

 五。数据库集群

  在物理上创建多个数据库

 




以上是关于数据库 ---39 索引 创建用户及授权 数据备份的主要内容,如果未能解决你的问题,请参考以下文章

db2数据库查询所有用户的sql语句

SQL Sever表添加主键失败

我要对mysql中的数据建立倒排索引应该怎么

将用户当前表空间中的表和索引迁移到另一个表空间

mysql 复合 唯一 索引

mysql索引问题