MySQL

MySQL为数据表建立索引的原则详解

面试题: 索引是什么? 索引的优点? 索引的缺点? 在建立索引的时候都有哪些需要考虑的因素呢? 为数据表建立索引的原则有哪些? 什么是索引覆盖? 非聚簇索引一定会回表查询吗? 1. 索引是什么? 索引是帮助我们实现快速查询数据库的数据结构。在很多时候,表中...

一文了解MySQL二级索引的查询过程

前言 聚簇索引就是innodb默认创建的基于主键的索引结构,而且表里的数据就是直接放在聚簇索引里,作为叶节点的数据页: 基于主键的数据搜索:从聚簇索引的根节点开始进行二分查找,一路找到对应数据页,基于页目录就直接定位到主键目标数据。 若想对其它字段建立索引...

MySQL中实现分页操作的实战指南

一、 背景 什么是分页,就是查询时候数据量太大,一次性返回所有查询结果既耗费网络资源、又降低了查询效率,用户也不可能一下子看完成千上万条数据。所以分页的技术就应运而生。分页可以只显示指定数量的数据。 分页在我们的生活中随处可见,如下图所示的电商网站: 二、...

一文详解MySQL主从同步原理

1. MySQL主从同步实现方式 MySQL主从同步是基于Bin Log实现的,而Bin Log记录的是原始SQL语句。 Bin Log共有三种日志格式,可以binlog_format配置参数指定。 参数值 含义 Statement 记录原始SQL语句,会...

如何优雅安全的备份MySQL数据

1. 为什么要备份数据 先说一下为什么需要备份MySQL数据? 一句话总结就是:为了保证数据的安全性。 如果我们把数据只存储在一个地方,如果物理机器损坏,会导致数据丢失,无法恢复。 还有就是我们每次手动修改线上数据之前,为了安全起见,都需要先备份数据。防止...

MySQL数据库完全卸载的方法

1停止MySQL的所有服务 2卸载MySQL程序 3删除电脑上的MySQL文件 4删除电脑上MySQL注册表的相关信息 5删除电脑C盘MySQL相关文件夹 MySQL数据库是一款非常好用的数据库管理系统,但是相对来说卸载起来麻烦一些这里给大家分享下MySQ...

深入解读PostgreSQL中的序列及其相关函数的用法

一、简介 序列对象(也叫序列生成器)就是用CREATE SEQUENCE 创建的特殊的单行表。一个序列对象通常用于为行或者表生成唯一的标识符。 二、创建序列 方法一:直接在表中指定字段类型为serial 类型 david=# create table tb...

一文搞懂什么是MySQL前缀索引

一、什么是前缀索引 所谓前缀索引,说白了就是对文本的前几个字符建立索引(具体是几个字符在建立索引时去指定),比如以产品名称的前 10 位来建索引,这样建立起来的索引更小,查询效率更快! 有点类似于 Oracle 中对字段使用 Left 函数来建立函数索引,...

MySQL数据库查询之多表查询总结

多表关系 在进行数据库表结构的设计时,会根据业务的需求和业务模块之间的关系,分析设计表结构,由于业务之间相互关联,所以各个表结构之间也存在各种联系 表与表之间的联系: 1.一对多(多对一) 2.多对多 3.一对一 一对多(多对一) 例如,一个员工对应一个部...