
MySQL
文章平均质量分 91
molaifeng
道阻且长,行则将至;行而不辍,未来可期。
展开
-
浅谈 Buffer Pool
缘由MySQL 是个典型的关系型数据库,自 5.5 版本起,默认的存储引擎由 MyISAM 改为 InnoDB。InnoDB 存储引擎中数据以页的形式存储在硬盘上,页的默认大小为 16KB。但是,基于硬盘和 CPU 巨大的速度差异(以上图 HDD 为例,相差千万倍 ),需得把数据缓存在内存里以提高性能,于是便引出了今天的主题 — Buffer Pool。注:1ms(毫秒) = 1000 us(微秒) = 1000 * 1000 ns(纳秒)Buffer Pool 是什么Buffer Pool原创 2021-03-04 22:26:45 · 415 阅读 · 1 评论 -
记一个特定 sql 的执行流程
文章目录缘由准备执行计划执行流程几个参数tmp_table_sizemax_heap_table_sizesort_buffer_size参考缘由先前群里同事抛出了个问题,select cnt, count(cnt) as num from test where status = 1 group by cnt having num > 0 order by num desc limit 10;这条 sql 的执行顺序是什么,最近刚三刷完 MySQL实战45讲,趁着春节没回家,今天就写成一篇博原创 2021-02-11 09:38:16 · 136 阅读 · 2 评论 -
解决 Got error 28 from storage engine
下午开发的时候,发现页面成白板了,于是开始 debug。由于此项目的认证信息是通过 HTTP 接口获取的,查看日志,发现 “array_merge(): Argument #1 is not an array”,于是去目标服务器追踪了下,方面也是一个 HTTP 接口调用,返回的是 null,再顺着看过去,发现最终的那个接口查了数据库,然后卡在那了,再查看具体的消息为 “Got error 28 from storage engine”,又是 MySQL 的问题。基于以往的经验,是不是内存满了或是硬盘满了,原创 2020-11-26 16:04:08 · 2504 阅读 · 4 评论 -
解决 InnoDB: Cannot allocate memory for the buffer pool
解决 InnoDB: Cannot allocate memory for the buffer pool原创 2020-08-05 15:35:39 · 1249 阅读 · 0 评论 -
Unknown table engine 'InnoDB'
刚刚移动端的同时说接口连接不上了,于是用phpmyadmin登陆服务器数据库查看了下,打开用户表页面显示为Unknown table engine 'InnoDB',以前没遇到过,于是在群里问了下,贴出了msql的错误日志(查看方式为vi /etc/my.cnf,找到错误日志的路径,之后再进入) 群里一个朋友说,端口占用了,于是使用命令netstat -anp |grep原创 2013-11-20 15:04:29 · 3049 阅读 · 0 评论 -
MySQL遇到的小问题
这篇博客,如同linux上遇到的小问题一样,一直更新,把平时项目中遇到的mysql问题及解决方法都贴在这,以供自己以后查看。原创 2015-02-27 09:56:34 · 569 阅读 · 0 评论 -
mysql开启日志功能
今天中午,经理过来说把项目的日志功能给开开,方便以后查看性能,一开始是他弄,嘿,转项目经理久了,技术就难免生疏了,就说了下怎么怎么弄。他走后,我便集中精力搞这个了,以前没弄过,于是乎,出现了一堆问题,当然了,最后都解决了,收获也蛮多的。 首先在windows上弄,找到my.ini,按照网上的说法,在配置文件底部加入 log="C:/temp/mysql.log"log_slow...原创 2013-12-18 15:30:53 · 36118 阅读 · 1 评论 -
MySQL 5.6.32 编译安装步骤
解压cd /usr/local/srcwget https://downloads.mysql.com/archives/get/file/mysql-5.6.32.tar.gztar xf mysql-5.6.32.tar.gz安装cd mysql-5.6.32cmake \-DCMAKE_INSTALL_PREFIX=/usr/share/mysql \-DMYS...原创 2018-06-26 18:13:39 · 365 阅读 · 0 评论 -
MySQL 建索引时 Specified key 'idx_t' was too long; max key length is 767 bytes 错误处理
在做 sql 优化时,对之前的表添加个索引,却给出了 Specified key 'idx_t' was too long; max key length is 767 bytes 提示,后来通过查询资料,发现由于 MySQL Innodb 引擎表索引字段长度的限制为 767 字节,因此对于多字节字符集的大字段(或者多字段组合索引),创建索引会出现上面的错误。以 utf8mb4 字符集 字...原创 2018-07-23 11:28:17 · 5659 阅读 · 2 评论