`
grzrt
  • 浏览: 182690 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mysql 语句的调度优先级及改变

 
阅读更多

MySQL的默认的调度策略可用总结如下:

· 写入操作优先于读取操作。

· 对某张数据表的写入操作某一时刻只能发生一次,写入请求按照它们到达的次序来处理。

· 对某张数据表的多个读取操作可以同时地进行。

MySQL允许你改变语句调度的优先级

MySQL提供了几个语句调节符,允许你修改它的调度策略:

· LOW_PRIORITY关键字应用于DELETE、INSERT、LOAD DATA、REPLACE和UPDATE。

· HIGH_PRIORITY关键字应用于SELECT和INSERT语句。

· DELAYED关键字应用于INSERT和REPLACE语句。

LOW_PRIORITY和HIGH_PRIORITY调节符影响那些使用数据表锁的存储引擎(例如MyISAM和MEMORY)。DELAYED调节符作用于MyISAM和MEMORY数据表。

update/insert/load data /replace/delete[low_priority]....

select/insert[high_priotiy]...

 

如果写入操作是一个LOW_PRIORITY(低优先级)请求,那么系统就不会认为它的优先级高于读取操作。在这种情况下,如果写入者在等待的时候,第二个读取者到达了,那么就允许第二个读取者插到写入者之前。只有在没有其它的读取者的时候,才允许写入者开始操作。 理论上,这种调度修改暗示着,可能存在LOW_PRIORITY写入操作永远被阻塞的情况。如果前面的读取操作在进行的过程中一直有其它的读取操作到达,那么新的请求都会插入到LOW_PRIORITY写入操作之前。

SELECT查询的HIGH_PRIORITY(高优先级)关键字也类似。它允许SELECT插入正在等待的写入操作之前,即使在正常情况下写入操作的优先级更高。另外一种影响是,高优先级的SELECT在正常的SELECT语句之前执行,因为这些语句会被写入操作阻塞。

如果你希望所有支持LOW_PRIORITY选项的语句都默认地按照低优先级来处理,那么请使用--low-priority-updates选项来启动服务器

注意:以上说明是针对使用表锁的存蓄引擎而言,比如myisam 和merge 等

分享到:
评论

相关推荐

    浅析mysql 语句的调度优先级及改变

    MySQL允许你改变语句调度的优先级 MySQL提供了几个语句调节符,允许你修改它的调度策略:· LOW_PRIORITY关键字应用于DELETE、INSERT、LOAD DATA、REPLACE和UPDATE。· HIGH_PRIORITY关键字应用于SELECT和INSERT语句...

    比 MySQL 和 MongoDB 快10倍的 OLTP 关系数据库和文档数据库.zip

    基于 SQL 优先级的抢占式调度,慢查询不会长期霸占 CPU 创建 JDBC 连接非常快速,占用资源少,不再需要 JDBC 连接池 插件化存储引擎架构,内置 AOSE 引擎,采用新颖的异步化 B-Tree 插件化事务引擎架构,事务处理...

    03开源NewSql数据库TiDB-Deep Dive into TiDB

    优化热点调度机制,统计更多的信息,并根据这些信息做更合理的调度;优化 RocksDB 的性能,使用 DeleteFilesInRanges 等特性,提升空间回收效率,降低磁盘负载,以及更加平滑地使用磁盘资源等等。 OLAP 性能优化 ...

    java初学者必看

    3.7.7 运算符的优先级 3.8 本章习题 第4章 程序流程控制 4.1 顺序结构 4.2 条件语句 4.2.1 if语句 4.2.2 if-else语句 4.2.3 if-else-if语句 4.2.4 if语句的嵌套 4.2.5 布尔表达式 4.2.6 开关语句 4.3 ...

    php网络开发完全手册

    2.5.8 运算符的优先级 41 2.6 特殊的全局变量的介绍 42 2.7 文件包含 42 2.7.1 使用require和require_once语句 2.7.1 进行文件包含 42 2.7.2 使用include与include_once语句 2.7.2 进行文件包含 44 2.8 小结 45 第3...

    Ubuntu权威指南(2/2)

    9.3 监控进程及系统资源 255 9.4 终止进程的运行 259 9.5 调整分时进程的优先级 261 9.5.1 nice命令 261 9.5.2 renice命令 263 9.5.3 调整进程优先级的作用 263 第10章 proc文件系统 265 10.1 进程内存映像文件 266 ...

    Ubuntu权威指南(1/2)

    9.3 监控进程及系统资源 255 9.4 终止进程的运行 259 9.5 调整分时进程的优先级 261 9.5.1 nice命令 261 9.5.2 renice命令 263 9.5.3 调整进程优先级的作用 263 第10章 proc文件系统 265 10.1 进程内存映像文件 266 ...

    javaSE代码实例

    11.1.4 try、catch及finally语句块之间需要注意的问题 201 11.2 异常的层次结构 203 11.2.1 捕获异常 203 11.2.2 未捕获异常 205 11.3 再次抛出异常 206 11.3.1 什么是异常的再抛出 206 11.3.2 显性再...

    java面试题,180多页,绝对良心制作,欢迎点评,涵盖各种知识点,排版优美,阅读舒心

    【基础】当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 17 【基础】重载(Overload)和重写(Override)的区别。重载的方法能否...

    J2eeFAST企业级快速开发平台 v2.0.8

    在线代码生成功能,包括核心模块如:组织机构、角色用户、菜单及按钮授权、数据权限、系统参数、内容管理、license认证,BPM工作流等。采用松耦合设计;界面无刷新,一键换肤;众多账号安全设置,密码策略;在线定时...

    J2eeFAST企业级快速开发平台-其他

    在线代码生成功能,包括核心模块如:组织机构、角色用户、菜单及按钮授权、数据权限、系统参数、内容管理、license认证,BPM工作流等。采用松耦合设计;界面无刷新,一键换肤;众多账号安全设置,密码策略;在线定时...

Global site tag (gtag.js) - Google Analytics