mysql
文章平均质量分 82
恬淡虚无真气从之
这个作者很懒,什么都没留下…
展开
-
mysql临时表相关参数
然而从5.7版本开始,临时表的默认存储引擎变为innodb,虽然在性能上有了一定的提升,但是由于innodb引擎的临时表共用表空间ibtmp1,导致在高并发下,多个session同时创建临时表时,该表空间会变得非常大,并且不能动态缩小,除非重启MySQL,否则无法释放。1.max_heap_table_size:用户创建的内存表的最大值,也用于和tmp_table_size一起,限制内部临时表在内存中的大小;释放磁盘空间只能重启。max_heap_table_size和tmp_table_size区别。原创 2022-12-19 22:58:59 · 505 阅读 · 0 评论 -
redis 主从数据不一致原因探查
主库:# Keyspace从库:# Keyspace单靠的expires来判断数据是否一致会出现偏差。其统计信息的统计值不是精确值,有一定的误差。keysexpires因此,通过expires来判断数据量时,逻辑上已经过期但未被Redis删除的keys也会被统计进来,从而出现了源端和目标端的数据不一致的现象。原创 2022-12-13 17:08:50 · 753 阅读 · 0 评论 -
innoxtrabackup全备参数-基于从库
在备份的时候加上--no-lock参数,就是在复制MyISAM表和.frm等文件的时候不锁表,不执行flush table with read lock,但要保证这时没有对MyISAM表的DML操作和Innodb表的DDL操作,这一般通过应用端权衡时间是容易办到的。这时可以加一个--safe-slave-backup参数,使得在从库上备份的时候停止SQL THRED,这样即使从库能从主库接收binlog文件,但是不会应用,relay log position就不会移动了,这个时候备份集中会生成一个。原创 2022-12-11 22:47:08 · 880 阅读 · 0 评论 -
mysql 导入数据报错(open_files_limit)
innodb_open_files=10000后好了。背景:导入数据报错。原创 2022-11-28 19:12:05 · 720 阅读 · 0 评论 -
mysql服务器 raid 分类
由于现代数据中心业务量的与日俱增,单台服务器上需要运行的数据也日益增多。当单个物理硬盘在容量和安全性上不足以支持系统业务时,就需要将多个硬盘以某种特定方式组合起来,对外作为一个可见的硬盘来使用,才可满足实际需要。硬盘组,就是将一组物理硬盘组合起来,作为一个整体对外体现,是虚拟磁盘的基础。虚拟磁盘,即使用硬盘组划分出来的连续的数据存储单元,相当于一个个独立的硬盘,通过一定的配置,使其具有比单个物理硬盘更大的容量,及更高的安全性和数据冗余性。原创 2022-11-19 19:19:59 · 293 阅读 · 0 评论 -
MySQL数据库单行数据大小对性能的影响
简介:今天被问一个问题,说单行数据有个字段最大16k,对 MySQL查询性能的影响有多大,是否会导致 MySQL下降。数据行格式:那是不是说,只要 varchar 中存储的数据大于 768 个字节,多余的字节就一定会存储的未压缩的二进制大对象页中?如果是这样的话,就会导致 B+ 树失去了意义(因为只有一个数据页,剩下数据就往二进制大对象页中插入就行),成为了一个链表。原创 2022-11-02 14:51:17 · 4608 阅读 · 0 评论 -
MySQL 中的mysql库探秘
简介:mysql 中有个库叫mysql,总共31张表,我们常用的可能是用户表user,还有time_zone表等。表columns_priv:对列进行授权,例如。原创 2022-10-11 21:59:30 · 1015 阅读 · 0 评论 -
mysql 日志归档(slow log和 error log)
5) copytruncate 如果没有这个选项的话,操作方式:是将原log日志文件,移动成类似log.1的旧文件, 然后创建一个新的文件。如果设置了,操作方式为拷贝原日志文件,并且将其变成大小为0的文件。dateformat .%s 配合dateext使用,紧跟在下一行出现,定义文件切割后的文件名,必须配合dateext使用,只支持 %Y %m %d %s 这四个参数。一 、脚本首先处理掉大的日志文件,因此logrotate轮转时是先copy,然后再清理日志文件,会打满磁盘IO。原创 2022-10-11 12:45:38 · 872 阅读 · 0 评论 -
MySQL 内存问题排查思路
简介:MySQL 内存持续增长的问题虽然不会经常发生,但是如果偶尔发生了,也会让我们不知所措。一 、如果碰到MySQL 内存持续升高问题的主要情况有4种:MySQL 没有合理设置 innodb_buffer_pool_size服务器上还有一些其他进程可以分配内内存。MySQL 内存泄漏。内存缓慢增长属于正常现象,但存在因为一些慢sql频繁执行并因MySQL的内存分配使用了系统glibc,而glibc本身的内存分配算法存在缺陷,导致内存释放不完全。二、MySQL 内存持续排查思路: 1 基于服务器的检查:原创 2022-10-10 08:51:03 · 2499 阅读 · 0 评论 -
mysql多源复制配置及注意事项
2) 查看performance_schema 库中的replication_connection_status 表。1、配置多源复制之前必须满足如下条件,这2个参数可以动态调整。如果没有配置这2个参数为TABLE,则会报错。1)使用show slave status。原创 2022-09-19 23:30:20 · 667 阅读 · 0 评论 -
使用 pt-table-checksum 检查MySQL数据一致性
校验结束后,在每个从库上,执行如下的sql语句即可看到是否有主从不一致发生:select * from percona.checksums where master_cnt this_cnt OR master_crc this_crc OR ISNULL(master_crc) ISNULL(this_crc) 配置选型:原创 2022-06-14 23:33:30 · 502 阅读 · 0 评论 -
mysql自增主键锁导致的导入数据超时问题
程序在生产导入数据时,报锁超时 Lock wait timeout exceeded; try restarting transaction;root@information_schema 04:21:55>select * from INNODB_TRX limit 10\G;*************************** 1. row ***************************trx_id: 188346027249trx_state: LOCK WAITt.原创 2022-04-01 17:12:26 · 1111 阅读 · 1 评论 -
碰到 mysql 主从复制报 ‘max_allowed_packet error’ bug 一例
mysql 主从同步的bug 还是比较坑的,我们一起看下原创 2022-03-24 22:15:53 · 1396 阅读 · 0 评论