MySQL

1.MD5加密

1.1:主要是增强算法复杂度和不可逆性。

1.2:MD5不可逆,具体的值的md5是一样的

1.3:破解原理:背后有一个字典,MD5加密后的值,加密的前值

 

2.事务:要么都成功要么都失败

2.1:事务的特性

原子性:要么都成功,要么都失败

一致性:事务的前后数据完整性要保持一致

持久性:事务一旦提交就不可逆,被持久化到数据库中

隔离性:多个用户并发访问数据库时,每一个数据库为用户开启的事务,不能被其他事务干扰

2.2:隔离产生的问题

脏读:一个事务读取另一个事务未提交的数据

不可重复读:在一个事务内读取表中某一行数据,多次读取的结果不同。

幻读:在一个事务内读取到别的事务插入的数据,导致前后不一致

2.3:事务的执行流程

关闭自动提交:set autocommit=0

事务开启:start transaction

事务提交:commit

事务回滚:rollback

开启自动提交:set autocommit=1

3.索引:

3.1索引的分类

主键索引(PRIMARY KEY):唯一的标识,主键不可重复,只能有一个列作为主键

唯一索引(UNIQUE KEY):避免重复的列出现,唯一索引可以重复,多个列都可以标识唯一索引

常规索引(KEY/INDEX):默认的,index和key来设置

全文索引(FULLTEXT):在特定的数据库引擎下才有,MyISAM;快速定位数据

3.2索引的作用

<1>创建和定义索引,根据一列或多列。

<2>使用索引:检索数据的操作,where索引的条件

注:MySQL默认innodb引擎,检索和数据都保存在本地;能快速检索数据

4.权限管理与备份

用户表:mysql.user

本质:对这张表进行增删改查

注:选择的主机和登录主机必须一致

 5.MySQL备份

5.1为什么要备份

保证数据不丢失

数据转移

5.2MySQL数据库的备份方式

————导出

#直接拷贝物理文件

#在sqlyog可视化工具手动导出

#使用mysqldump命令使用:mysqldump -h 主机 -u 用户名 -p 密码 数据库 表名 > 物理键盘位置/文件名

 :导出多个表,表之间用,隔开;导出整个数据库

 ————导入

在登录的情况下,切换到指定数据库

mysql -u用户名 -p密码 库名< 备份文件

6.规范数据库设计

6.1为什么要设计

糟糕的数据库设计

数据冗余,浪费空间

数据库的插入和删除都会麻烦,异常(屏蔽使用物理外键)

程序性能查

良好的数据库设计

节省空间

保证数据库完整性

方便开发系统

6.2关于数据库设计

分析需求:分析业务和需要处理的数据库的需求

概要设计:设计关系图E-R

6.3三大范式:(解决信息重复/更新异常/插入异常/删除异常)

第一范式——>原子性:每一列都是不可再分

第二范式——>在1的基础上+每张表只描述一件事情

第三范式——>在2的基础上+确保每一列数据只和主键有关,而不能间接相关

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值