视图,索引,备份,恢复

视图

what什么是视图?wyh为什么使用视图?如何使用视图?

概念:视图是一张虚拟表。表示一张部分表的部分数据或多张表的综合数据,其结构和数据是建立在对表的查询基础上。视图即可看的图展示数据,是指在数据库中通过查询拿到自己想要的数据。

why:比如在公司,每个阶层人权限不一样,关注的数据不一样。需要根据数据库来选择自己需要的数据(原有表中创建临时表表)。

视图特点:

1.视图中的数据是通过原有表查询拿到的

2.视图中可以修改数据,但不这么操作,因为在视图中操作有许多条件限制,在原表中修改数据是正确的选择

3.视图可以相互嵌套

4.视图主要是用来观看数据

视图的用途:

删选表中的行,防止未经许可的用户访问敏感数据,讲第数据库的复杂程度

如何使用视图:

****创建视图****  create view_名称

                            as  <select 语句>;

***删除视图*****    drop view if  exist  view_名字;(如果这个表存在,删除视图。不存在,相当于没有运行)

****查看视图****  select 字段1,字段2......from view_名称;

****查看所有视图****  select*from viewG;

索引

相当于数据库中的目录。快速查找数据库中的数据。

作用:1.大大提高数据库的检索速度

            2.改善数据库性能

存储类型分类:B-树索引和哈希索引

常用索引类型:普通索引,唯一索引,主键索引,复合索引

唯一索引:索引列数据不重复,允许有空值

主键索引:主键列中的每个值是非空唯一的,一个主键将自动创建主键索引

复合索引:将多个列组合作为索引

全文索引:支持值的全文查找,允许重复值和空值

操作:

create (unique/fulltext/spatail)   index index_name  on table_name(column_name(length));

unique/fulltext/spatail:表示唯一索引,全文索引和空间索引为可选参数

index_name:指定索引名

table_name:指定创建索引名

column_name:需要创建索引的列

length:指定索引长度。只有字符串才指定索引长度

***删除索引*** drop index index_name on table_name;

***查看索引*** show index from table_name;

**频繁搜索的列,经常用作查询选择的列,经常排序分组的列,用作主外键队列适合用来索引

**仅包含几个不同值的列,表中仅有几行这类情况不适合创建索引

使用索引注意事项:

 备份:

在生活中常常会备份数据,保证数据安全。

使用mysqldump命令备份数据库

格式:

myasqldmp -u username -h host -ppassword

 dbname [tbname1],[tbname2]....>filename.sql

username表示用户名

host表示登录用户的主机名称,本机为主机可以省略

password:表示登陆密码

dbname:为需要备份的数据表,可指定多张表。备份整个数据库则此项省略

filename:sql备份文件的名称

恢复:

对于备份数据库后生成的包含有建库,建表,插入数据等sql语句文本文件,可以通过mysql命令还原到新的数据库中。

方法一:使用mysql命令恢复数据库

mysql  -u username -p [dbname]<filename.sql

其中:

username 表示用户名

dbname 表示数据库名

filename.sql 为数据库备份后的文件

方法二:使用source命令恢复数据库

语法:source  filename;

原文地址:https://www.cnblogs.com/yangshuwenzuibang/p/12871503.html