MySQL(五)

匿名 (未验证) 提交于 2019-12-02 22:06:11

数据备份

数据导出

先退出mysql环境 数据的导出 备份表: 格式:mysqldump  -uroot -p 库名 表名>表名.sql  备份库: 格式: mysqldump  -uroot  -p 库名>备份文件名.sql  数据的导入: Mysql  -uroot  -p 库名 < 备份文件地址.sql  

用户与授权

创建用户

格式: create user '用户名'@'ip地址' identified by '密码'  创建用户名为lisi 任何位置都可以登录: Create user ‘lisi’@’%’ identified by ‘123456’  创建用户wangwu 只能本地登录的用户 Create user ‘wangwu’@’localhost’ identified by ‘123456’;  创建用户wzy只能在ip地址为10.10.107.85的设备上链接数据库 create user 'wzy'@'10.10.107.85' identified by '123456'; 

授权

格式:grant 权限 on 库名.表名 to 用户名@‘地址’  给李四添加 所有库所有表的 查询权限 Grant select on *.* to ‘lisi’@’%’  给远程连接的zhaoliu用户添加对demo1数据库下所有表的所有权限 Grant all on demo1.* to ‘zhaoliu’@’%’ 

删除用户:

格式:drop user ‘用户名’@‘ip地址’ 

索引

一种高效获取数据的存储结构,通过索引可以快速找到符合条件的数据
mysql中索引使用 b+tree的排序方式

优缺点:

提升数据的查询速度,减少io操作 缺点维护成本高,会降低其他操作的执行速度 

索引分类:

普通索引:index 可以为空 可以重复   唯一索引:unique 可以为空 不能重复 主键索引:primary key  不能为空且唯一 多列索引:将多个字段绑定到一起添加一个索引 

添加索引:

格式:alter table 表名 add 索引类型 【索引名】(字段名); 如果不指定索引的名字,那么索引名就以字段名为准 

查看索引:

格式:show index from 表名; 

删除索引:

Drop index 索引的名字 on 表名; 删除主键索引的格式: 删除主键索引要先将主建索引的自增属性删除 然后才能删除主键索引 Alter table 表名 drop primary key; 

视图

定义:是一张虚拟的表,有字段和数据,只存放查询语句,视图基于源表
特点:

简单:视图构建了一个虚拟的表,表里的数据是来源于复杂的查询语句,我们将复杂的查询语句存入视图,使用是直接调用视图 安全:数据据有对库和表的权限管理,但是没有对字段权限,可以通过视图来实现权限的功能 数据的独立性: 视图基于源表,当源表的结构发生变化时,不会对视图产生影响 

创建视图

CREATE VIEW 视图名 AS(查询语句); 

查看视图

SHOW TABLE STATUS WHERE COMMENT=’view’; 

使用视图

SELECT * FROM 视图名; 

删除视图

DROP VIEW 视图名; 

触发器:Trigger

触发器是一个特殊的存储过程,不需要手动触发当我们在做 添加 删除 修改操作时会自动触发触发器

查看触发器

Select * from information_schema.trigger; 

删除触发器

Drop trigger 触发器名字 

创建触发器

CREATE TRIGGER  触发器名字 触发时机 触发事件  ON 表名  FOR EACH ROW  BEGIN 触发器要执行的sql语句 EDN; 
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!