数据库
文章平均质量分 68
贝多芬也爱敲代码
哇!好多不了解的,还是要多啃得点 ^0^~
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
深分页优化:高效解决方案全解析
应对深分页问题的综合解决方案 深分页(如查询第10000页数据)会导致数据库性能下降。解决方案包括:1)数据源限制,通过归档冷数据减少总量;2)引入Elasticsearch,利用search_after机制避免偏移量问题;3)SQL优化,使用游标分页(基于有序字段)替代OFFSET;4)ES+SQL混合方案,用ES快速检索ID后通过数据库回查;5)纯数据库优化,如分步查询、延迟关联等。根据业务场景选择合适方案,优先考虑数据归档和索引优化,再逐步引入高级架构。原创 2025-08-26 13:39:24 · 963 阅读 · 0 评论 -
Mysql设置主从服务器
首先明白如何实现的数据同步主服务器发生变化的时候,会将SQL语句写入Binarylog文件中,从数据库一直再观察着这个文件,发生变化的时候就将变化读入,并写入到Replaylog文件中,从服务器的SQL线程会执行Replaylog中的语句实现数据同步具体实现首先设置主服务器my.cnf文件,指定写入的binarylog的文件位置。设置从服务器用来访问主服务器的角色和权限。设置从服务器的...原创 2019-10-24 21:23:34 · 263 阅读 · 0 评论 -
Mysql知识梳理(数据库的锁梳理,Mysql优化)
写入磁盘:事务提交时,InnoDB 会将 redo log 缓冲区的内容持久化到磁盘中的 redo log 文件中(即“预写日志”原则,WAL,Write-Ahead Logging),确保即使系统崩溃,仍可以通过 redo log 恢复事务。innodb_log_buffer_size决定了innodb重做日志缓存的大小,对于可能产生大量更新记录的大事务,增加innodb_log_buffer_size的大小,可以避免innodb在事务提交前就执行不必要的日志写入磁盘操作。原创 2025-02-07 18:43:07 · 999 阅读 · 0 评论 -
char类型和varchar的区别和选用
2. varchar字段,存储的空间根据存储的内容变化,空间长度为L+size,存储内容长度加描述存储内容长度信息,优点就是空间节约,缺点就是读取和存储时候,需要读取信息计算下标,才能获取完整内容。缺点是空间冗余,对于数据量大的表,非固定长度属性使用char字段,空间浪费。3.1 固定长度的属性选用char类型,如ID字段长度固定都是36,就选char(36).3.1 对于字段长度小的且固定长度的属性,例如长度为3的,选char(3)3.2 对于较长的且不固定长度的属性,用varchar(36).原创 2022-09-16 11:21:36 · 3631 阅读 · 0 评论 -
数据库范式通俗理解
写在前面数据库范式一直是一种很难理解的,各种翻译版本讲解的方式都比较难理解,在这重新梳理下自己的理解范式一、范式NF (normal from) 规范的形式二、1NF要求我们表中的每个字段都必须是最基本的属性,即原子属性(不可再拆分)。例如:学生表中,有学号,姓名,联系方式,这个联系方式就不满足1NF,因为联系方式还可以拆分为手机号,微信号,QQ号等。三、2NF要求表中所有的属性都依赖于主键。所有的字段只有因为主键才会变得有意义。例如:学生表,姓名,性别不能确定是那个学生,反而我们能通原创 2022-03-28 21:59:21 · 1660 阅读 · 0 评论 -
存储引擎:MyISAM和InnoDB的区别
数据库版本MySQL5.5版本开始Innodb已经成为Mysql的默认引擎(之前是MyISAM)区别事务和外建全文索引,在MySQL 5.7.6之前,全文索引只支持英文全文索引,不支持中文全文索引,需要利用分词器把中文段落预处理拆分成单词,然后存入数据库。从MySQL 5.7.6开始,MySQL内置了ngram全文解析器,用来支持中文、日文、韩文分词,支持Myisam和InnoDB。本文使用的MySQL 版本是5.7.20,InnoDB数据库引擎。锁: InnoDB支持行锁,MyIsam支持表原创 2021-03-10 19:01:44 · 184 阅读 · 1 评论 -
Mysql:InnoDB下的锁
文章目录一、锁的种类二、锁的理解三、行锁1、行锁的实现2、S锁,X锁3、上锁4、行锁注意点四、间隙锁1、间隙锁的产生2、定义2. 间隙锁作用五、Next-Key lock六、 锁的使用七、扩展备注一、锁的种类InnoDB支持三种锁,行锁,间隙锁,Next-Key lock。二、锁的理解首先InnoDB下,数据其实是索引树(聚簇索引)的数据节点。所以锁也就是对索引进行上锁操作。三、行锁1、行锁的实现就是对索引树的某一项进行上锁操作。2、S锁,X锁行锁分为共享锁,和排他锁。共享锁,持有锁的原创 2021-02-26 16:04:17 · 542 阅读 · 0 评论 -
MySQL数据库:Innodb引擎下数据库的实现
数据库文章原创 2020-12-31 17:27:55 · 189 阅读 · 0 评论
分享