myisam 表锁优化参考
众所周知,myisam是表级锁!能够提供非常快速的查询,但是更新一多,myisam表级锁导致查询极其缓慢!而有的应用苦于需要使用fulltext,不能更改存储引擎,这个时候,只能优化myisam表级锁!
几个方向仅供参考:
1.减少sql查询时间(把大sql拆分)
2.如果在从机,可以设置更新优先级:
三种方法:
2.1 --low-priority-updates启动参数,降低update的优先级,提升select的优先级
2.2 set low-priority=updates=1提升当前线程的优先级 ,提升当前线程的select优先级
2.3 可以在insert、update、delete语句中指定low_priority属性来主动降低优先级
3. 当某结果集较大,而又需要在大结果集做操作的时候,建议转换为临时表,释放表后,在临时表进行操作!(临时表的影响参数tmp_table_size和max_heap_table_size)
4. 开启并发插入concurrent_insert
0,表示不允许并发插入
1,表示当myisam没有空洞时候,允许一个(最多只能同时一个线程插入)线程在读的时候,进行插入
2,表示不管是否有空洞,都进行一个线程的在读的适合并发插入
转载于:https://blog.51cto.com/imysqldba/1304550
myisam 表锁优化参考相关推荐
- Myisam表锁优化建议
Myisam表级锁定,与行级锁定相反,表级别的锁定是MYSQL各存储引擎中最大颗粒度的锁定机制.该锁定机制最大的特点是实现逻辑非常简单,带来的系统处理成本最小,所以获取锁和释放锁的速度很快.由于表级锁 ...
- MySQL中的锁机制、MyISAM表锁、MyISAM表级锁争用情况、MyISAM并发插入Concurrent Inserts、MyISAM的锁调度
前言: 关于读锁.写锁.乐观锁.悲观锁.行锁.表锁的理解可以看看以前我写的: 读锁.写锁.乐观锁.悲观锁.行锁.表锁 内部锁:在MySQL服务器内部执行的锁,以管理多个会话对表内容的争用.这种类型的锁 ...
- MySQL(二):详解MyIsam表锁
1.MySQL锁基本介绍 锁是计算机协调多个进程或线程并发访问某一个资源的机制.在数据库层面,除传统的计算机资源(CPU.RAM.I/O等)的争用之外,数据也是一种供多用户共享的资源.如何保证数据并发 ...
- mysql myisam表_mysql优化之MyISAM表锁
概述 MyISAM存储引擎只支持表锁,mysql的表锁有两种模式:读锁和写锁. 他们的兼容关系是(对myisam的读操作,不会阻塞其他用户对同一表的读请求,但会阻塞对同一表的写操作*)和(对myisa ...
- myisam表锁及锁粒度调节
myisam支持表锁,对表的读写是串行执行的,在一定条件下,Myisam表也支持查询和插入操作的并发执行. Myisam存储引擎有一个系统变量concurrent_insert,专门用以控制其并发插入 ...
- MySQL高级 - 锁 - MyISAM表锁 - 小结
锁模式的相互兼容性如表中所示: 由上表可见: 1) 对MyISAM 表的读操作,不会阻塞其他用户对同一表的读请求,但会阻塞对同一表的写请求: 2) 对MyISAM 表的写操作,则会阻塞其他用户 ...
- MySQL高级 - 锁 - MyISAM表锁 - 读锁
如何加表锁 MyISAM 在执行查询语句(SELECT)前,会自动给涉及的所有表加读锁,在执行更新操作(UPDATE.DELETE.INSERT 等)前,会自动给涉及的表加写锁,这个过程并不需要用户干 ...
- MySQL高级 - 锁 - MyISAM表锁 - 查看锁争用情况
查看锁的争用情况 In_user : 表当前被查询使用的次数.如果该数为零,则表是打开的,但是当前没有被使用. Name_locked:表名称是否被锁定.名称锁定用于取消表或对表进行重命名等操作. s ...
- MySQL高级 - 锁 - MyISAM表锁 - 写锁
写锁案例 客户端 一 : 1)获得tb_book 表的写锁 lock table tb_book write ; 2)执行查询操作 select * from tb_book ; 查询操作执行成功: ...
最新文章
- php接入微信运动计步功能,运动计步,微信运动究竟靠不靠谱?
- 2013年新疆中小学教师计算机水平考试机试题(复习版),2013年新疆中小学教师计算机水平考试笔试题(复习版8套含答案)...
- C++ protobuf 不仅仅是序列化……
- 吸引子矩阵和鞍点矩阵可以用神经网络二分类吗?
- python入门基础教程02 Python简介
- 从零开始带你一步一步使用YOLOv3测试自己的数据
- Android系统语言默认设置为简体中文
- 源码解读_Go Map源码解读之Map迭代
- 【网易云信获奖啦】2020 年值得再读一遍的技术干货 | 下篇
- xpose修改手机imei码,注入广告
- 樊正伦教授的养生之道中医文化与养生之---调情志
- 关于local storage及session storage 应用问题
- 数据库sql 四种语言DDL DML DCL DQL 基本语法
- 计算机病毒计算机中的程序是吗,计算机病毒是一种程序吗?
- 反编译DLL。并且修改DLL内容
- 三十三个免费匿名临时邮箱服务
- 系统集成项目管理工程师(软考中级)—— 第二十二章 安全管理 笔记分享
- ClickHouse安装部署
- javascript顺序点击文字验证
- 【蓝桥杯省赛】冲刺练习题【数学公式】倒计时【05】天(准考证组委会已下发,请查询)
热门文章
- python loop call soon_python3-asyncio 学习笔记 1 -- call_soon
- 毕业论文 | 基于STM32的MPU6050程序设计(源码)——卡尔曼滤波
- python的高级函数_Python的高级函数
- vc 中对对话框的几种操作
- mysql my-small.ini_MySql优化之my-small.ini配置
- php mysql获取新添加记录的id值_PHP获取MySql新增记录ID值的方法
- 计算机无法识别文件夹,电脑提示错误:此卷不包含可识别的文件系统的解决办法...
- 英语语法---谓语详解
- xml 属性value换行显示_python 标准库之xml.etree.ElementTree
- 速学c++(2)-helloworld工程