众所周知,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 表锁优化参考相关推荐

  1. Myisam表锁优化建议

    Myisam表级锁定,与行级锁定相反,表级别的锁定是MYSQL各存储引擎中最大颗粒度的锁定机制.该锁定机制最大的特点是实现逻辑非常简单,带来的系统处理成本最小,所以获取锁和释放锁的速度很快.由于表级锁 ...

  2. MySQL中的锁机制、MyISAM表锁、MyISAM表级锁争用情况、MyISAM并发插入Concurrent Inserts、MyISAM的锁调度

    前言: 关于读锁.写锁.乐观锁.悲观锁.行锁.表锁的理解可以看看以前我写的: 读锁.写锁.乐观锁.悲观锁.行锁.表锁 内部锁:在MySQL服务器内部执行的锁,以管理多个会话对表内容的争用.这种类型的锁 ...

  3. MySQL(二):详解MyIsam表锁

    1.MySQL锁基本介绍 锁是计算机协调多个进程或线程并发访问某一个资源的机制.在数据库层面,除传统的计算机资源(CPU.RAM.I/O等)的争用之外,数据也是一种供多用户共享的资源.如何保证数据并发 ...

  4. mysql myisam表_mysql优化之MyISAM表锁

    概述 MyISAM存储引擎只支持表锁,mysql的表锁有两种模式:读锁和写锁. 他们的兼容关系是(对myisam的读操作,不会阻塞其他用户对同一表的读请求,但会阻塞对同一表的写操作*)和(对myisa ...

  5. myisam表锁及锁粒度调节

    myisam支持表锁,对表的读写是串行执行的,在一定条件下,Myisam表也支持查询和插入操作的并发执行. Myisam存储引擎有一个系统变量concurrent_insert,专门用以控制其并发插入 ...

  6. MySQL高级 - 锁 - MyISAM表锁 - 小结

    锁模式的相互兼容性如表中所示: 由上表可见: ​ 1) 对MyISAM 表的读操作,不会阻塞其他用户对同一表的读请求,但会阻塞对同一表的写请求: ​ 2) 对MyISAM 表的写操作,则会阻塞其他用户 ...

  7. MySQL高级 - 锁 - MyISAM表锁 - 读锁

    如何加表锁 MyISAM 在执行查询语句(SELECT)前,会自动给涉及的所有表加读锁,在执行更新操作(UPDATE.DELETE.INSERT 等)前,会自动给涉及的表加写锁,这个过程并不需要用户干 ...

  8. MySQL高级 - 锁 - MyISAM表锁 - 查看锁争用情况

    查看锁的争用情况 In_user : 表当前被查询使用的次数.如果该数为零,则表是打开的,但是当前没有被使用. Name_locked:表名称是否被锁定.名称锁定用于取消表或对表进行重命名等操作. s ...

  9. MySQL高级 - 锁 - MyISAM表锁 - 写锁

    写锁案例 客户端 一 : 1)获得tb_book 表的写锁 lock table tb_book write ; 2)执行查询操作 select * from tb_book ; 查询操作执行成功: ...

最新文章

  1. php接入微信运动计步功能,运动计步,微信运动究竟靠不靠谱?
  2. 2013年新疆中小学教师计算机水平考试机试题(复习版),2013年新疆中小学教师计算机水平考试笔试题(复习版8套含答案)...
  3. C++ protobuf 不仅仅是序列化……
  4. 吸引子矩阵和鞍点矩阵可以用神经网络二分类吗?
  5. python入门基础教程02 Python简介
  6. 从零开始带你一步一步使用YOLOv3测试自己的数据
  7. Android系统语言默认设置为简体中文
  8. 源码解读_Go Map源码解读之Map迭代
  9. 【网易云信获奖啦】2020 年值得再读一遍的技术干货 | 下篇
  10. xpose修改手机imei码,注入广告
  11. 樊正伦教授的养生之道中医文化与养生之---调情志
  12. 关于local storage及session storage 应用问题
  13. 数据库sql 四种语言DDL DML DCL DQL 基本语法
  14. 计算机病毒计算机中的程序是吗,计算机病毒是一种程序吗?
  15. 反编译DLL。并且修改DLL内容
  16. 三十三个免费匿名临时邮箱服务
  17. 系统集成项目管理工程师(软考中级)—— 第二十二章 安全管理 笔记分享
  18. ClickHouse安装部署
  19. javascript顺序点击文字验证
  20. 【蓝桥杯省赛】冲刺练习题【数学公式】倒计时【05】天(准考证组委会已下发,请查询)

热门文章

  1. python loop call soon_python3-asyncio 学习笔记 1 -- call_soon
  2. 毕业论文 | 基于STM32的MPU6050程序设计(源码)——卡尔曼滤波
  3. python的高级函数_Python的高级函数
  4. vc 中对对话框的几种操作
  5. mysql my-small.ini_MySql优化之my-small.ini配置
  6. php mysql获取新添加记录的id值_PHP获取MySql新增记录ID值的方法
  7. 计算机无法识别文件夹,电脑提示错误:此卷不包含可识别的文件系统的解决办法...
  8. 英语语法---谓语详解
  9. xml 属性value换行显示_python 标准库之xml.etree.ElementTree
  10. 速学c++(2)-helloworld工程