您好,登錄后才能下訂單哦!
下文給大家?guī)?lái)有關(guān)mysql的性能該如何優(yōu)化內(nèi)容,相信大家一定看過(guò)類似的文章。我們給大家?guī)?lái)的有何不同呢?一起來(lái)看看正文部分吧,相信看完mysql的性能該如何優(yōu)化你一定會(huì)有所收獲。
文件系統(tǒng):
優(yōu)化文件系統(tǒng)掛載參數(shù):文件系統(tǒng)掛載參數(shù)是在/etc/fstab文件中修改,重啟時(shí)候生效。noatime表示不記錄訪問(wèn)時(shí)間,nodiratime不記錄目錄的訪問(wèn)時(shí)間。barrier=0,表示關(guān)閉barrier功能。其中nobarrier是xfs文件系統(tǒng)特有,ext4文件系統(tǒng)并無(wú)此參數(shù)。
擴(kuò)大文件描述符:
1、動(dòng)態(tài)修改,重啟失效,只能使用root,并且當(dāng)前session有效:ulimit -n 65535
2、修改配置文件,永久生效,在/etc/security/limits.conf配置文件中增加:
soft nofile 65535
soft nproc 65535
hard nofile 65535
hard nproc 65535
sync_binlog:
sync_binlog=0,當(dāng)事務(wù)提交之后,MySQL不做fsync之類的磁盤同步指令刷新binlog_cache中的信息到磁盤,而讓Filesystem自行決定什么時(shí)候來(lái)做同步,或者cache滿了之后才同步到磁盤。
sync_binlog=n,當(dāng)每進(jìn)行n次事務(wù)提交之后,MySQL將進(jìn)行一次fsync之類的磁盤同步指令來(lái)將binlog_cache中的數(shù)據(jù)強(qiáng)制寫(xiě)入磁盤。
innodb_flush_log_at_trx_commit:
如果innodb_flush_log_at_trx_commit設(shè)置為0,log buffer將每秒一次地寫(xiě)入log file中,并且log file的flush(刷到磁盤)操作同時(shí)進(jìn)行.該模式下,在事務(wù)提交的時(shí)候,不會(huì)主動(dòng)觸發(fā)寫(xiě)入磁盤的操作。
如果innodb_flush_log_at_trx_commit設(shè)置為1,每次事務(wù)提交時(shí)MySQL都會(huì)把log buffer的數(shù)據(jù)寫(xiě)入log file,并且flush(刷到磁盤)中去.
如果innodb_flush_log_at_trx_commit設(shè)置為2,每次事務(wù)提交時(shí)MySQL都會(huì)把log
buffer的數(shù)據(jù)寫(xiě)入log file.但是flush(刷到磁盤)操作并不會(huì)同時(shí)進(jìn)行。該模式下,MySQL會(huì)每秒執(zhí)行一次
flush(刷到磁盤)操作。
強(qiáng)烈建議關(guān)閉query cache。通過(guò)配置文件設(shè)置query_cache_size = 0、query_cache_type = 0即可。
分布式優(yōu)化
分庫(kù)分表:
這里也可以分為2類:
(1)通過(guò)前端應(yīng)用代碼邏輯實(shí)現(xiàn)的方式,實(shí)現(xiàn)表分拆的方式。這樣做對(duì)應(yīng)用程序的侵入性比較大,但是數(shù)據(jù)處理邏輯的過(guò)程把控在自己手上,有異常可以自主定位。
(2)通過(guò)中間件的方式實(shí)現(xiàn),目前常用的mycat、cobar實(shí)現(xiàn)數(shù)據(jù)分片。
讀寫(xiě)分離:
一般通過(guò)數(shù)據(jù)庫(kù)中間件的方式實(shí)現(xiàn),常用的中間件例如:maxscale、mycat、cobar、altas等
對(duì)于上文關(guān)于mysql的性能該如何優(yōu)化,大家覺(jué)得是自己想要的嗎?如果想要了解更多相關(guān),可以繼續(xù)關(guān)注我們的行業(yè)資訊板塊。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。