单机数据库策略

单机

单机时代考虑2个问题:速度,存储空间
表格设计的策略:
早期硬盘成本高,速度响应要求不高,尽可能的牺牲时间,减少空间的占用
使用三范式。

  • 第一范式:数据库表格字段不可切分(关系型数据库自然支持)
姓名电话
王翠花66666668,17760769456

将电话继续拆分:为两个字段固话,手机

  • 第二范式:所有的非主键字段必须依赖全部的主键字段(复合主键:多个字段实现主键的功能)
    stu 学生 sub表示科目

在这里插入图片描述
sub_name 只依赖sub_id 而不依赖stu_id,因此需要拆分

  • 第三范式:非主键字段必须 依赖主键字段不能依赖其他非主键字段
    apart 学系
    -在这里插入图片描述
    appart_name 不依赖stu_id,而依赖非主键字段apart_id

总结

如果满足三范式,就不可能出现冗余字段,导致整体数据占用空间变小,但是表格拆分的过多,关联关系复杂,
查询时效率变低–牺牲了时间.节省了空间。
违反了三范式设计可以实现–牺牲空间,节省时间–反范式

集群

无论如何设计表格结构,物理瓶颈总是限制单个服务器,单个硬盘的读写效率200M/s,无论如何设计表格结构,物理瓶颈总是限制单个服务器,单个硬盘的读写效率 200M/S,在想多,单机无法处理,需要分布式集群的引入
在这里插入图片描述

数据库集群

主从复制

在这里插入图片描述
主节点master:
开启一个二进制日志文件log-bin 记录所有的写操作的日志信息,以position记录的操作指针位置
从节点slave:
I/O线程:登录主节点,监听二进制日志文件,通过position的值是否发生更新改变来判断是否需要抓取新的内容
中继日志rey-log:记录了I/O线程抓取的所有内容,以position来记录更新的位置
SQL线程:监听slave节点内部的中继日志,判断是否有更新的写操作需要执行.从而将I/O抓取的所有内容在从节点执行一遍,保持和主节点的同步

linux安装Percona的mysql

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

主从结构的配置

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值