电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

MySQL為什么要避免大事務(wù)以及大事務(wù)解決的方法

瀏覽:70日期:2023-10-12 12:13:00

什么是大事務(wù)

運(yùn)行時(shí)間比較長(zhǎng),長(zhǎng)時(shí)間未提交的事務(wù)就可以稱(chēng)為大事務(wù)

大事務(wù)產(chǎn)生的原因

操作的數(shù)據(jù)比較多 大量的鎖競(jìng)爭(zhēng) 事務(wù)中有其他非DB的耗時(shí)操作 。。。

大事務(wù)造成的影響

并發(fā)情況下,數(shù)據(jù)庫(kù)連接池容易被撐爆 鎖定太多的數(shù)據(jù),造成大量的阻塞和鎖超時(shí) 執(zhí)行時(shí)間長(zhǎng),容易造成主從延遲 回滾所需要的時(shí)間比較長(zhǎng) undo log膨脹 。。。

如何查詢(xún)大事務(wù)

**注**:本文的sql的操作都是基于mysql5.7版本

以查詢(xún)執(zhí)行時(shí)間超過(guò)10秒的事務(wù)為例:

select * from information_schema.innodb_trx where TIME_TO_SEC(timediff(now(),trx_started))>10

如何避免大事務(wù)

通用解法

在一個(gè)事務(wù)里面, 避免一次處理太多數(shù)據(jù) 在一個(gè)事務(wù)里面,盡量避免不必要的查詢(xún) 在一個(gè)事務(wù)里面, 避免耗時(shí)太多的操作,造成事務(wù)超時(shí)。一些非DB的操作,比如rpc調(diào)用,消息隊(duì)列的操作盡量放到事務(wù)之外操作

基于mysql5.7的解法

在InnoDB事務(wù)中,行鎖是在需要的時(shí)候才加上的,但并不是不需要了就立刻釋放,而是要等到事務(wù)結(jié)束時(shí)才釋放。**如果你的事務(wù)中需要鎖多個(gè)行,要把最可能造成鎖沖突、最可能影響并發(fā)度的鎖盡量往后放** 通過(guò)SETMAX_EXECUTION_TIME命令, 來(lái)控制每個(gè)語(yǔ)句查詢(xún)的最長(zhǎng)時(shí)間,避免單個(gè)語(yǔ)句意外查詢(xún)太長(zhǎng)時(shí)間 監(jiān)控 information_schema.Innodb_trx表,設(shè)置長(zhǎng)事務(wù)閾值,超過(guò)就報(bào)警/或者kill 在業(yè)務(wù)功能測(cè)試階段要求輸出所有的general_log,分析日志行為提前發(fā)現(xiàn)問(wèn)題 設(shè)置innodb_undo_tablespaces值,將undo log分離到獨(dú)立的表空間。如果真的出現(xiàn)大事務(wù)導(dǎo)致回滾段過(guò)大,這樣設(shè)置后清理起來(lái)更方便

附錄查詢(xún)事務(wù)相關(guān)語(yǔ)句

**注**:sql語(yǔ)句都是基于mysql5.7版本

# 查詢(xún)所有正在運(yùn)行的事務(wù)及運(yùn)行時(shí)間select t.*,to_seconds(now())-to_seconds(t.trx_started) idle_time from INFORMATION_SCHEMA.INNODB_TRX t# 查詢(xún)事務(wù)詳細(xì)信息及執(zhí)行的SQLselect now(),(UNIX_TIMESTAMP(now()) - UNIX_TIMESTAMP(a.trx_started)) diff_sec,b.id,b.user,b.host,b.db,d.SQL_TEXT from information_schema.innodb_trx a inner join information_schema.PROCESSLIST bon a.TRX_MYSQL_THREAD_ID=b.id and b.command = ’Sleep’inner join performance_schema.threads c ON b.id = c.PROCESSLIST_IDinner join performance_schema.events_statements_current d ON d.THREAD_ID = c.THREAD_ID;# 查詢(xún)事務(wù)執(zhí)行過(guò)的所有歷史SQL記錄SELECT ps.id ’PROCESS ID’, ps.USER, ps.HOST, esh.EVENT_ID, trx.trx_started, esh.event_name ’EVENT NAME’, esh.sql_text ’SQL’, ps.time FROM PERFORMANCE_SCHEMA.events_statements_history esh JOIN PERFORMANCE_SCHEMA.threads th ON esh.thread_id = th.thread_id JOIN information_schema.PROCESSLIST ps ON ps.id = th.processlist_id LEFT JOIN information_schema.innodb_trx trx ON trx.trx_mysql_thread_id = ps.id WHERE trx.trx_id IS NOT NULL AND ps.USER != ’SYSTEM_USER’ ORDER BY esh.EVENT_ID; # 簡(jiǎn)單查詢(xún)事務(wù)鎖 select * from sys.innodb_lock_waits # 查詢(xún)事務(wù)鎖詳細(xì)信息 SELECT tmp.*, c.SQL_Text blocking_sql_text, p.HOST blocking_host FROM ( SELECT r.trx_state wating_trx_state, r.trx_id waiting_trx_id, r.trx_mysql_thread_Id waiting_thread, r.trx_query waiting_query, b.trx_state blocking_trx_state, b.trx_id blocking_trx_id, b.trx_mysql_thread_id blocking_thread, b.trx_query blocking_query FROM information_schema.innodb_lock_waits w INNER JOIN information_schema.innodb_trx b ON b.trx_id = w.blocking_trx_id INNER JOIN information_schema.innodb_trx r ON r.trx_id = w.requesting_trx_id ) tmp, information_schema.PROCESSLIST p, PERFORMANCE_SCHEMA.events_statements_current c, PERFORMANCE_SCHEMA.threads t WHERE tmp.blocking_thread = p.id AND t.thread_id = c.THREAD_ID AND t.PROCESSLIST_ID = p.id

以上就是MySQL避免大事務(wù)以及大事務(wù)解決的方法的詳細(xì)內(nèi)容,更多關(guān)于MySQL 大事務(wù)的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: MySQL 數(shù)據(jù)庫(kù)
相關(guān)文章:
主站蜘蛛池模板: 长沙一级消防工程公司_智能化弱电_机电安装_亮化工程专业施工承包_湖南公共安全工程有限公司 | 浙江富广阀门有限公司| cnc精密加工_数控机械加工_非标平键定制生产厂家_扬州沃佳机械有限公司 | 钢丝绳探伤仪-钢丝绳检测仪-钢丝绳探伤设备-洛阳泰斯特探伤技术有限公司 | AGV叉车|无人叉车|AGV智能叉车|AGV搬运车-江西丹巴赫机器人股份有限公司 | 扬州汇丰仪表有限公司 | 铝合金电阻-无源谐波滤波器-上海稳达电讯设备厂 | 蓝莓施肥机,智能施肥机,自动施肥机,水肥一体化项目,水肥一体机厂家,小型施肥机,圣大节水,滴灌施工方案,山东圣大节水科技有限公司官网17864474793 | 青岛球场围网,青岛车间隔离网,青岛机器人围栏,青岛水源地围网,青岛围网,青岛隔离栅-青岛晟腾金属制品有限公司 | 户外-组合-幼儿园-不锈钢-儿童-滑滑梯-床-玩具-淘气堡-厂家-价格 | 密集架-密集柜厂家-智能档案密集架-自动选层柜订做-河北风顺金属制品有限公司 | 美的商用净水器_美的直饮机_一级代理经销商_Midea租赁价格-厂家反渗透滤芯-直饮水批发品牌售后 | CXB船用变压器-JCZ系列制动器-HH101船用铜质开关-上海永上船舶电器厂 | 巨野月嫂-家政公司-巨野县红墙安康母婴护理中心 | 酒店厨房设计_中央厨房设计_北京商用厨房设计公司-奇能商厨 | 车充外壳,车载充电器外壳,车载点烟器外壳,点烟器连接头,旅行充充电器外壳,手机充电器外壳,深圳市华科达塑胶五金有限公司 | 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库-首页-东莞市傲马网络科技有限公司 | 润东方环保空调,冷风机,厂房车间降温设备-20年深圳环保空调生产厂家 | 高温热泵烘干机,高温烘干热泵,热水设备机组_正旭热泵 | 航拍_专业的无人机航拍摄影门户社区网站_航拍网 | 盘扣式脚手架-附着式升降脚手架-移动脚手架,专ye承包服务商 - 苏州安踏脚手架工程有限公司 | PC阳光板-PC耐力板-阳光板雨棚-耐力板雨棚,厂家定制[优尼科板材] | 登车桥动力单元-非标液压泵站-非标液压系统-深圳市三好科技有限公司 | 黑龙江「京科脑康」医院-哈尔滨失眠医院_哈尔滨治疗抑郁症医院_哈尔滨精神心理医院 | 北京网站建设-企业网站建设-建站公司-做网站-北京良言多米网络公司 | 纯化水设备-纯水设备-超纯水设备-[大鹏水处理]纯水设备一站式服务商-东莞市大鹏水处理科技有限公司 | 带压开孔_带压堵漏_带压封堵-菏泽金升管道工程有限公司 | 法兰连接型电磁流量计-蒸汽孔板节流装置流量计-北京凯安达仪器仪表有限公司 | 消防设施操作员考试报名时间,报名入口,报考条件 | VOC检测仪-甲醛检测仪-气体报警器-气体检测仪厂家-深恒安科技有限公司 | 免费网站网址收录网_海企优网站推荐平台| 定坤静电科技静电消除器厂家-除静电设备 | 东莞注册公司-代办营业执照-东莞公司注册代理记账-极刻财税 | 水厂污泥地磅|污泥处理地磅厂家|地磅无人值守称重系统升级改造|地磅自动称重系统维修-河南成辉电子科技有限公司 | 液氮罐_液氮容器_自增压液氮罐-北京君方科仪科技发展有限公司 | 恒温水槽与水浴锅-上海熙浩实业有限公司| 恒温水槽与水浴锅-上海熙浩实业有限公司 | 美国HASKEL增压泵-伊莱科elettrotec流量开关-上海方未机械设备有限公司 | 翅片管散热器价格_钢制暖气片报价_钢制板式散热器厂家「河北冀春暖气片有限公司」 | 岩棉板|岩棉复合板|聚氨酯夹芯板|岩棉夹芯板|彩钢夹芯板-江苏恒海钢结构 | 比士亚-专业恒温恒湿酒窖,酒柜,雪茄柜的设计定制 |