亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁(yè) > 數(shù)據(jù)庫(kù) > MySQL > 正文

my.cnf(my.ini)重要參數(shù)優(yōu)化配置說(shuō)明

2024-07-25 19:08:11
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

MyISAM存儲(chǔ)引擎

MyISAM存儲(chǔ)引擎適用于讀多寫(xiě)少,對(duì)讀性能要求比較高的系統(tǒng)

官方文檔:http://dev.mysql.com/doc/refman/5.6/en/myisam-storage-engine.html

Key_buffer_size,可以設(shè)置為內(nèi)存的30%-40%左右。通過(guò)show variables like ‘%key_buffer_size%';

通過(guò) show global status like ‘%key_blocks_unused%' 查看是否還有剩余,如果剩余很多,就不需要再加大key_buffer_size了
如果不用MyISAM,建議設(shè)置16m到32m就可以了

Query_cache 如果應(yīng)用程序有大量讀且應(yīng)用程序級(jí)別沒(méi)有緩存,設(shè)置這個(gè)會(huì)比較有用,但是也別太大,維護(hù)開(kāi)銷(xiāo)比較大,mysql反而會(huì)變慢,建議32m到512m

Sort_buffer_size當(dāng)進(jìn)行復(fù)雜查詢(xún)時(shí)候用到,建議8m到16m

Query_cache_size緩存select查詢(xún)結(jié)果,如果有大量相同查詢(xún),可以將這個(gè)值加大。

Bulk_insert_buffer_size 批量insert時(shí)候使用,必須小于key_buffer_size

Read_rnd_buffer_size sql有order by的情況下并且第二次查詢(xún)時(shí)候就會(huì)用到,他會(huì)記錄排序,將直接從內(nèi)存中讀取。

Thread_cache_size cache中保留多少線(xiàn)程重用,如果再設(shè)置的值內(nèi),線(xiàn)程斷開(kāi)也不會(huì)銷(xiāo)毀,等待新鏈接。減少線(xiàn)程創(chuàng)建的開(kāi)銷(xiāo)。

參數(shù)官方參考文檔:http://dev.mysql.com/doc/refman/5.6/en/optimizing-myisam.html

Innodb 存儲(chǔ)引擎

Innodb 存儲(chǔ)引擎 1

并發(fā)線(xiàn)程數(shù):Innodb_thread_concurrency=0[默認(rèn)],并不是說(shuō)沒(méi)有并發(fā),而是指無(wú)限并發(fā),沒(méi)有并發(fā)檢查。innodb內(nèi)部自己控制
取值0到1000

建議:

Cpu數(shù)量+磁盤(pán)數(shù)量 * 2,如果有RAID主備,就不乘2,因?yàn)橛袀浞荽疟P(pán)

Innodb 存儲(chǔ)引擎 2

Innodb_io_capacity默認(rèn)值是200,個(gè)人認(rèn)為是表示磁盤(pán)IO的吞吐量,innodb每秒后臺(tái)進(jìn)程處理IO操作的數(shù)據(jù)頁(yè)上限

Innodb_io_capacity_max默認(rèn)2000,設(shè)置IO上線(xiàn)

源碼:在innodb存儲(chǔ)引擎層搜索srv_io_capacity(主要在srv0srv.c文件中)

當(dāng)使用SSD可以再調(diào)高一些,直到符合磁盤(pán)IO吞吐量即可

Innodb 存儲(chǔ)引擎 3

innodb_max_dirty_pages_pct innodb從innodb buffer中刷新臟頁(yè)的比例15% - 80%

源碼:在innodb存儲(chǔ)引擎層搜索srv_max_buf_pool_modified_pct(主要在srv0srv.c文件中)

Innodb 存儲(chǔ)引擎 4 [重要]

innodb_flush_method( O_DSYNC 、 O_DIRECT )

O_DSYNC:InnoDB使用O_SYNC模式打開(kāi)并更新日志文件,用fsync()函數(shù)去更新數(shù)據(jù)文件。

O_DIRECT:InnoDB使用O_DIRECT模式打開(kāi)數(shù)據(jù)文件,用fsync()函數(shù)去更新日志和數(shù)據(jù)文件

在raid設(shè)備上,為了避免數(shù)據(jù)被innodb_buffer和raid多次cache,設(shè)置為O_DIRECT方式。也就是說(shuō)直接打開(kāi)數(shù)據(jù)文件,不用打開(kāi)日志文件了。

源碼:在innodb存儲(chǔ)引擎層搜索srv_unix_file_flush_method(主要在log0log.c、os0file.c文件中)

Innodb 存儲(chǔ)引擎 5 【重要】

innodb_buffer_pool_size

Innodb會(huì)遵循lru,在錄入數(shù)據(jù)的時(shí)候會(huì)根據(jù)數(shù)據(jù)的情況,會(huì)加載到innodb_buffer_pool_size 中。如果操作數(shù)據(jù)的時(shí)候就省去了去數(shù)據(jù)文件中查找,直接從內(nèi)存中找到了。

一般設(shè)置內(nèi)存的80%左右,但需要考慮數(shù)據(jù)文件的總量是多大。Buffer_pool_size + 數(shù)據(jù)量所占容量 + 操作系統(tǒng)所用內(nèi)存 = 內(nèi)存大小。盡可能設(shè)置多一些。

源碼:在innodb存儲(chǔ)引擎層搜索srv_buf_pool_size(在srv0srv.c、srv0start.c文件中)。

Innodb 存儲(chǔ)引擎 6

innodb_buffer_pool_instances 當(dāng)有多實(shí)例的情況下,需要設(shè)置。

源碼:在innodb存儲(chǔ)引擎層搜索srv_buf_pool_instances(主要集中在的buf0buf.c文件)

Innodb 存儲(chǔ)引擎 7

innodb_log_file_size 日志文件大小

innodb_log_buffer_size 日志緩存大小

先寫(xiě)入innodb_log_buffer,buffer寫(xiě)滿(mǎn)或事務(wù)提交,刷新數(shù)據(jù),大事務(wù)頻繁,增加innodb_log_buffer_size大小,默認(rèn)16M。

源碼:在innodb存儲(chǔ)引擎層搜索srv_log_buffer_size(主要在log0log.c文件中)

Innodb 存儲(chǔ)引擎 8 【重要】

Innodb_file_per_table

當(dāng)設(shè)置Innodb_file_per_table 為1時(shí)為打開(kāi)狀態(tài),也就是設(shè)置所有表為獨(dú)立表空間,一個(gè)表一個(gè)存儲(chǔ)數(shù)據(jù)文件。同時(shí)要設(shè)置

Innodb_open_files(同時(shí)打開(kāi)文件數(shù))。因?yàn)槊總€(gè)表對(duì)應(yīng)一個(gè)數(shù)據(jù)文件,所以需要設(shè)置同時(shí)打開(kāi)文件的數(shù)量以保證查詢(xún)多表的情況,并且想要把某個(gè)表移出的別的磁盤(pán)時(shí)共享表空間是無(wú)法遷移的,因?yàn)樗斜矶际褂弥蚕肀砜臻g。

默認(rèn)是所有表都放到共享空間中。也就是OFF

innodb 存儲(chǔ)引擎9

Innodb_flush_log_at_trx_commit 核心參數(shù):

0:每秒將log buffer的內(nèi)容寫(xiě)事務(wù)日志并且刷新到磁盤(pán)

1:每個(gè)事務(wù)提交后,將log buffer的內(nèi)容寫(xiě)事務(wù)日志并寫(xiě)入數(shù)據(jù)磁盤(pán)

2:每個(gè)事務(wù)提交,將log buffer內(nèi)容寫(xiě)事務(wù)日志,但是不進(jìn)行數(shù)據(jù)刷盤(pán)

Sync_binlog

雙一致模式: innodb_flush_log_at_trx_commit=1;sync_binlog=1;這樣的主從數(shù)據(jù)是一致的,不會(huì)丟數(shù)據(jù)。

官方參數(shù)描述地址: http://dev.mysql.com/doc/refman/5.6/en/innodb-parameters.html

系統(tǒng)參數(shù)優(yōu)化

NUMA(雙實(shí)例下,可以把每一個(gè)實(shí)例放到numa單獨(dú)控制的節(jié)點(diǎn)下面)

在os層numa關(guān)閉時(shí),打開(kāi)bios層的numa會(huì)影響性能,QPS會(huì)下降15-30%左右;

在bios層面numa關(guān)閉是,無(wú)論os層面的numa是否打開(kāi),都不會(huì)影響性能。

系統(tǒng)優(yōu)化 jemalloc

網(wǎng)卡優(yōu)化:RPS+RFS

malloc

1)、下載jemalloc源碼包
wget http://www.canonware.com/download/jemalloc/jemalloc-3.6.0.tar.bz2
tar -xjf jemalloc-3.6.0.tar.bz2

2)、編譯安裝
cd jemalloc-3.6.0; ./configure;make &make install

3)、配置MySQL

[mysqld_safe]
malloc-lib=$PATH/libjemalloc.so

4)、參考文檔:http://blog.chinaunix.net/uid-29957450-id-4547818.html

my.cnf配置文件參考

# 以下選項(xiàng)會(huì)被MySQL客戶(hù)端應(yīng)用讀取。 # 注意只有MySQL附帶的客戶(hù)端應(yīng)用程序保證可以讀取這段內(nèi)容。 # 如果你想你自己的MySQL應(yīng)用程序獲取這些值。 # 需要在MySQL客戶(hù)端庫(kù)初始化的時(shí)候指定這些選項(xiàng)。[client]port    = 3306socket   = /usr/local/mysql/mysql.sock# MySQL 服務(wù)端[mysqld]#默認(rèn)存儲(chǔ)引擎INNODBdefault-storage-engine=INNODB#GROUP_CONCAT長(zhǎng)度group_concat_max_len =99999#端口號(hào)port    = 3306#socket位置socket   = /usr/local/mysql/mysql.sock #pid寫(xiě)入文件位置pid-file    = /usr/local/mysql/mysqld.pid#數(shù)據(jù)庫(kù)文件位置datadir     = /home/data/mysql/datauser    = mysql#SQL模式具體查閱相關(guān)資料sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES#當(dāng)外部鎖定(external-locking)起作用時(shí),每個(gè)進(jìn)程若要訪(fǎng)問(wèn)數(shù)據(jù)表,#則必須等待之前的進(jìn)程完成操作并解除鎖定。由于服務(wù)器訪(fǎng)問(wèn)數(shù)據(jù)表時(shí)經(jīng)常需要等待解鎖,#因此在單服務(wù)器環(huán)境下external locking會(huì)讓MySQL性能下降。#所以在很多Linux發(fā)行版的源中,MySQL配置文件中默認(rèn)使用了skip-external-locking來(lái)避免external locking。skip-external-locking#跳過(guò)DNS反向解析skip-name-resolve#關(guān)閉TIMESTAMP類(lèi)型默認(rèn)值explicit_defaults_for_timestamp#不受client字符集影響,保證sever端字符集skip-character-set-client-handshake#初始連接字符集UTF8init-connect='SET NAMES utf8'#默認(rèn)數(shù)據(jù)庫(kù)字符集character-set-server=utf8#查詢(xún)緩存0,1,2,分別代表了off、on、demandquery_cache_type = 1#單位秒,握手時(shí)間超過(guò)connect_timeout,連接請(qǐng)求將會(huì)被拒絕connect_timeout = 20#設(shè)置在多少秒沒(méi)收到主庫(kù)傳來(lái)的Binary Logs events之后,從庫(kù)認(rèn)為網(wǎng)絡(luò)超時(shí),Slave IO線(xiàn)程會(huì)重新連接主庫(kù)。#該參數(shù)的默認(rèn)值是3600s ,然而時(shí)間太久會(huì)造成數(shù)據(jù)庫(kù)延遲或者主備庫(kù)直接的鏈接異常不能及時(shí)發(fā)現(xiàn)。#將 slave_net_timeout 設(shè)得很短會(huì)造成 Master 沒(méi)有數(shù)據(jù)更新時(shí)頻繁重連。一般線(xiàn)上設(shè)置為5s slave_net_timeout = 30#這個(gè)參數(shù)用來(lái)配置從服務(wù)器的更新是否寫(xiě)入二進(jìn)制日志,這個(gè)選項(xiàng)默認(rèn)是不打開(kāi)的,#但是,如果這個(gè)從服務(wù)器B是服務(wù)器A的從服務(wù)器,同時(shí)還作為服務(wù)器C的主服務(wù)器,那么就需要開(kāi)發(fā)這個(gè)選項(xiàng),#這樣它的從服務(wù)器C才能獲得它的二進(jìn)制日志進(jìn)行同步操作log-slave-updates=1#用于slave服務(wù)器,io線(xiàn)程會(huì)把server id與自己相同的event寫(xiě)入日志,與log-slave-updates選項(xiàng)沖突replicate-same-server-id=0# 對(duì)了生成唯一的server_id我想到了,大家ip地址唯一,比如10.112.87.91 ,就直接去掉點(diǎn)號(hào)在后面加上編號(hào)01或者02或者03(加上2位數(shù)編號(hào)是怕一臺(tái)物理機(jī)滄岸嗍道,主從復(fù)制需要server-id來(lái)標(biāo)識(shí)的# 用10112879101做server_id就可以了。server_id=10112879101# 打開(kāi)二進(jìn)制日志功能. # 在復(fù)制(replication)配置中,作為MASTER主服務(wù)器必須打開(kāi)此項(xiàng) # 如果你需要從你最后的備份中做基于時(shí)間點(diǎn)的恢復(fù),你也同樣需要二進(jìn)制日志log-bin =/home/data/mysql/binlog/mysql-bin.log#relay-log日志relay-log=mysql-relay-bin#master-info-repository以及relay-log-info-repository打開(kāi)以啟用崩潰安全的二進(jìn)制日志/從服務(wù)器功能(在事務(wù)表而不是平面文件中存儲(chǔ)信息)master-info-repository=TABLErelay-log-info-repository=TABLE#不寫(xiě)入binlog二進(jìn)制日志中的數(shù)據(jù)庫(kù)binlog-ignore-db=mysql       # No sync databasesbinlog-ignore-db=test        # No sync databasesbinlog-ignore-db=information_schema   # No sync databasesbinlog-ignore-db=performance_schema   # No sync databases#寫(xiě)入binlog二進(jìn)制日志中數(shù)據(jù)庫(kù)binlog-do-db=business_dbbinlog-do-db=user_dbbinlog-do-db=plocc_system#15滾動(dòng)清理binlogexpire-logs-days=15max_binlog_size = 1073741824      # Bin logs size ( 1G )#使binlog在每1000次binlog寫(xiě)入后與硬盤(pán)同步sync_binlog = 1000#指定只復(fù)制哪個(gè)庫(kù)的數(shù)據(jù)replicate-do-db=business_dbreplicate-do-db=user_dbreplicate-do-db=plocc_system#開(kāi)啟事件調(diào)度器Event Schedulerevent_scheduler=1#MySQL能暫存的連接數(shù)量。當(dāng)主要MySQL線(xiàn)程在一個(gè)很短時(shí)間內(nèi)得到非常多的連接請(qǐng)求,這就起作用。#如果MySQL的連接數(shù)據(jù)達(dá)到max_connections時(shí),新來(lái)的請(qǐng)求將會(huì)被存在堆棧中,以等待某一連接釋放資源,#該堆棧的數(shù)量即back_log,如果等待連接的數(shù)量超過(guò)back_log,將不被授予連接資源back_log = 500#整個(gè)數(shù)據(jù)庫(kù)最大連接(用戶(hù))數(shù)max_connections = 6000#一個(gè)用戶(hù)的最大連接數(shù)max_user_connection=3000 # 每個(gè)客戶(hù)端連接最大的錯(cuò)誤允許數(shù)量,如果達(dá)到了此限制. # 這個(gè)客戶(hù)端將會(huì)被MySQL服務(wù)阻止直到執(zhí)行了”FLUSH HOSTS” 或者服務(wù)重啟 # 非法的密碼以及其他在鏈接時(shí)的錯(cuò)誤會(huì)增加此值. # 查看 “Aborted_connects” 狀態(tài)來(lái)獲取全局計(jì)數(shù)器max_connect_errors = 1844674407370954751#表描述符緩存大小,可減少文件打開(kāi)/關(guān)閉次數(shù)table_open_cache = 2048# 服務(wù)所能處理的請(qǐng)求包的最大大小以及服務(wù)所能處理的最大的請(qǐng)求大小(當(dāng)與大的BLOB字段一起工作時(shí)相當(dāng)必要) # 每個(gè)連接獨(dú)立的大小.大小動(dòng)態(tài)增加max_allowed_packet = 64M# 在一個(gè)事務(wù)中binlog為了記錄SQL狀態(tài)所持有的cache大小 # 如果你經(jīng)常使用大的,多聲明的事務(wù),你可以增加此值來(lái)獲取更大的性能. # 所有從事務(wù)來(lái)的狀態(tài)都將被緩沖在binlog緩沖中然后在提交后一次性寫(xiě)入到binlog中 # 如果事務(wù)比此值大, 會(huì)使用磁盤(pán)上的臨時(shí)文件來(lái)替代. # 此緩沖在每個(gè)連接的事務(wù)第一次更新?tīng)顟B(tài)時(shí)被創(chuàng)建binlog_cache_size = 1M# 獨(dú)立的內(nèi)存表所允許的最大容量. # 此選項(xiàng)為了防止意外創(chuàng)建一個(gè)超大的內(nèi)存表導(dǎo)致用盡所有的內(nèi)存資源.max_heap_table_size = 1342177280# 排序緩沖被用來(lái)處理類(lèi)似ORDER BY以及GROUP BY隊(duì)列所引起的排序 # 如果排序后的數(shù)據(jù)無(wú)法放入排序緩沖, # 一個(gè)用來(lái)替代的基于磁盤(pán)的合并分類(lèi)會(huì)被使用 # 查看 “Sort_merge_passes” 狀態(tài)變量. # 在排序發(fā)生時(shí)由每個(gè)線(xiàn)程分配sort_buffer_size = 8M# 此緩沖被使用來(lái)優(yōu)化全聯(lián)合(full JOINs 不帶索引的聯(lián)合). # 類(lèi)似的聯(lián)合在極大多數(shù)情況下有非常糟糕的性能表現(xiàn), # 但是將此值設(shè)大能夠減輕性能影響. # 通過(guò) “Select_full_join” 狀態(tài)變量查看全聯(lián)合的數(shù)量 # 當(dāng)全聯(lián)合發(fā)生時(shí),在每個(gè)線(xiàn)程中分配 join_buffer_size = 8M# 我們?cè)赾ache中保留多少線(xiàn)程用于重用 # 當(dāng)一個(gè)客戶(hù)端斷開(kāi)連接后,如果cache中的線(xiàn)程還少于thread_cache_size, # 則客戶(hù)端線(xiàn)程被放入cache中. # 這可以在你需要大量新連接的時(shí)候極大的減少線(xiàn)程創(chuàng)建的開(kāi)銷(xiāo) # (一般來(lái)說(shuō)如果你有好的線(xiàn)程模型的話(huà),這不會(huì)有明顯的性能提升.)thread_cache_size = 128# 此允許應(yīng)用程序給予線(xiàn)程系統(tǒng)一個(gè)提示在同一時(shí)間給予渴望被運(yùn)行的線(xiàn)程的數(shù)量. # 此值只對(duì)于支持 thread_concurrency() 函數(shù)的系統(tǒng)有意義( 例如Sun Solaris). # 你可可以嘗試使用 [CPU數(shù)量]*(2..4) 來(lái)作為thread_concurrency的值thread_concurrency = 8# 查詢(xún)緩沖常被用來(lái)緩沖 SELECT 的結(jié)果并且在下一次同樣查詢(xún)的時(shí)候不再執(zhí)行直接返回結(jié)果. # 打開(kāi)查詢(xún)緩沖可以極大的提高服務(wù)器速度, 如果你有大量的相同的查詢(xún)并且很少修改表. # 查看 “Qcache_lowmem_prunes” 狀態(tài)變量來(lái)檢查是否當(dāng)前值對(duì)于你的負(fù)載來(lái)說(shuō)是否足夠高. # 注意: 在你表經(jīng)常變化的情況下或者如果你的查詢(xún)?cè)拿看味疾煌? # 查詢(xún)緩沖也許引起性能下降而不是性能提升.query_cache_size = 64M# 只有小于此設(shè)定值的結(jié)果才會(huì)被緩沖 # 此設(shè)置用來(lái)保護(hù)查詢(xún)緩沖,防止一個(gè)極大的結(jié)果集將其他所有的查詢(xún)結(jié)果都覆蓋query_cache_limit = 2M# 被全文檢索索引的最小的字長(zhǎng). # 你也許希望減少它,如果你需要搜索更短字的時(shí)候. # 注意在你修改此值之后, # 你需要重建你的 FULLTEXT 索引ft_min_word_len = 4# 線(xiàn)程使用的堆大小. 此容量的內(nèi)存在每次連接時(shí)被預(yù)留. # MySQL 本身常不會(huì)需要超過(guò)64K的內(nèi)存 # 如果你使用你自己的需要大量堆的UDF函數(shù) # 或者你的操作系統(tǒng)對(duì)于某些操作需要更多的堆, # 你也許需要將其設(shè)置的更高一點(diǎn). thread_stack = 192K# 設(shè)定默認(rèn)的事務(wù)隔離級(jí)別.可用的級(jí)別如下: # READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLEtransaction_isolation = READ-COMMITTED# 內(nèi)部(內(nèi)存中)臨時(shí)表的最大大小 # 如果一個(gè)表增長(zhǎng)到比此值更大,將會(huì)自動(dòng)轉(zhuǎn)換為基于磁盤(pán)的表. # 此限制是針對(duì)單個(gè)表的,而不是總和.tmp_table_size = 1342177280#binlog日志類(lèi)型--混合型binlog_format=mixed#開(kāi)啟慢查詢(xún)?nèi)罩緎low_query_log#文件格式log_output = FILE# 所有的使用了比這個(gè)時(shí)間(以秒為單位)更多的查詢(xún)會(huì)被認(rèn)為是慢速查詢(xún). # 不要在這里使用”0″, 否則會(huì)導(dǎo)致所有的查詢(xún),甚至非常快的查詢(xún)頁(yè)被記錄下來(lái)(由于MySQL 目前時(shí)間的精確度只能達(dá)到秒的級(jí)別). long_query_time = 0.5#慢查詢(xún)?nèi)罩疚恢胹low_query_log_file=/usr/local/mysql/mysqld_slow.log#指定索引緩沖區(qū)的大小,它決定索引處理的速度,尤其是索引讀的速度#******************** MyISAM 相關(guān)選項(xiàng)********************************# 關(guān)鍵詞緩沖的大小, 一般用來(lái)緩沖MyISAM表的索引塊. # 不要將其設(shè)置大于你可用內(nèi)存的30%, # 因?yàn)橐徊糠謨?nèi)存同樣被OS用來(lái)緩沖行數(shù)據(jù) # 甚至在你并不使用MyISAM 表的情況下, 你也需要仍舊設(shè)置起 8-64M 內(nèi)存由于它同樣會(huì)被內(nèi)部臨時(shí)磁盤(pán)表使用.key_buffer_size = 32M# 用來(lái)做MyISAM表全表掃描的緩沖大小. # 當(dāng)全表掃描需要時(shí),在對(duì)應(yīng)線(xiàn)程中分配.read_buffer_size = 2M# 當(dāng)在排序之后,從一個(gè)已經(jīng)排序好的序列中讀取行時(shí),行數(shù)據(jù)將從這個(gè)緩沖中讀取來(lái)防止磁盤(pán)尋道. # 如果你增高此值,可以提高很多ORDER BY的性能. # 當(dāng)需要時(shí)由每個(gè)線(xiàn)程分配 read_rnd_buffer_size = 8M# MyISAM 使用特殊的類(lèi)似樹(shù)的cache來(lái)使得突發(fā)插入 # (這些插入是,INSERT … SELECT, INSERT … VALUES (…), (…), …, 以及 LOAD DATA # INFILE) 更快. 此變量限制每個(gè)進(jìn)程中緩沖樹(shù)的字節(jié)數(shù). # 設(shè)置為 0 會(huì)關(guān)閉此優(yōu)化. # 為了最優(yōu)化不要將此值設(shè)置大于 “key_buffer_size”. # 當(dāng)突發(fā)插入被檢測(cè)到時(shí)此緩沖將被分配.bulk_insert_buffer_size = 16M# 此緩沖當(dāng)MySQL需要在 REPAIR, OPTIMIZE, ALTER 以及 LOAD DATA INFILE 到一個(gè)空表中引起重建索引時(shí)被分配. # 這在每個(gè)線(xiàn)程中被分配.所以在設(shè)置大值時(shí)需要小心.myisam_sort_buffer_size = 128M# MySQL重建索引時(shí)所允許的最大臨時(shí)文件的大小 (當(dāng) REPAIR, ALTER TABLE 或者 LOAD DATA INFILE). # 如果文件大小比此值更大,索引會(huì)通過(guò)鍵值緩沖創(chuàng)建(更慢) myisam_max_sort_file_size = 1G# 如果一個(gè)表?yè)碛谐^(guò)一個(gè)索引, MyISAM 可以通過(guò)并行排序使用超過(guò)一個(gè)線(xiàn)程去修復(fù)他們. # 這對(duì)于擁有多個(gè)CPU以及大量?jī)?nèi)存情況的用戶(hù),是一個(gè)很好的選擇.myisam_repair_threads = 1# 自動(dòng)檢查和修復(fù)沒(méi)有適當(dāng)關(guān)閉的 MyISAM 表. myisam_recover# *************** INNODB 相關(guān)選項(xiàng) ********************* # 如果你的MySQL服務(wù)包含InnoDB支持但是并不打算使用的話(huà), # 使用此選項(xiàng)會(huì)節(jié)省內(nèi)存以及磁盤(pán)空間,并且加速某些部分 #skip-innodb# #####[關(guān)鍵項(xiàng)]# InnoDB使用一個(gè)緩沖池來(lái)保存索引和原始數(shù)據(jù), 不像 MyISAM. # 這里你設(shè)置越大,你在存取表里面數(shù)據(jù)時(shí)所需要的磁盤(pán)I/O越少. # 在一個(gè)獨(dú)立使用的數(shù)據(jù)庫(kù)服務(wù)器上,你可以設(shè)置這個(gè)變量到服務(wù)器物理內(nèi)存大小的80% # 不要設(shè)置過(guò)大,否則,由于物理內(nèi)存的競(jìng)爭(zhēng)可能導(dǎo)致操作系統(tǒng)的換頁(yè)顛簸. # 注意在32位系統(tǒng)上你每個(gè)進(jìn)程可能被限制在 2-3.5G 用戶(hù)層面內(nèi)存限制, # 所以不要設(shè)置的太高.innodb_buffer_pool_size = 700m #1G# InnoDB 將數(shù)據(jù)保存在一個(gè)或者多個(gè)數(shù)據(jù)文件中成為表空間. # 如果你只有單個(gè)邏輯驅(qū)動(dòng)保存你的數(shù)據(jù),一個(gè)單個(gè)的自增文件就足夠好了. # 其他情況下.每個(gè)設(shè)備一個(gè)文件一般都是個(gè)好的選擇. # 你也可以配置InnoDB來(lái)使用裸盤(pán)分區(qū) – 請(qǐng)參考手冊(cè)來(lái)獲取更多相關(guān)內(nèi)容innodb_data_file_path = IBdata1:1024M;IBdata2:1024M:autoextend# 設(shè)置此選項(xiàng)如果你希望InnoDB表空間文件被保存在其他分區(qū). # 默認(rèn)保存在MySQL的datadir中. #innodb_data_home_dir = # 用來(lái)同步IO操作的IO線(xiàn)程的數(shù)量. This value is # 此值在Unix下被硬編碼為4,但是在Windows磁盤(pán)I/O可能在一個(gè)大數(shù)值下表現(xiàn)的更好. innodb_file_io_threads = 4# 在InnoDb核心內(nèi)的允許線(xiàn)程數(shù)量. # 最優(yōu)值依賴(lài)于應(yīng)用程序,硬件以及操作系統(tǒng)的調(diào)度方式. # 過(guò)高的值可能導(dǎo)致線(xiàn)程的互斥顛簸.innodb_thread_concurrency = 16# #####[關(guān)鍵項(xiàng)]# 如果設(shè)置為1 ,InnoDB會(huì)在每次提交后刷新(fsync)事務(wù)日志到磁盤(pán)上, # 這提供了完整的ACID行為. # 如果你愿意對(duì)事務(wù)安全折衷, 并且你正在運(yùn)行一個(gè)小的事務(wù), 你可以設(shè)置此值到0或者2來(lái)減少由事務(wù)日志引起的磁盤(pán)I/O # 0代表日志只大約每秒寫(xiě)入日志文件并且日志文件刷新到磁盤(pán). # 2代表日志寫(xiě)入日志文件在每次提交后,但是日志文件只有大約每秒才會(huì)刷新到磁盤(pán)上. # --------------------# (說(shuō)明:如果是游戲服務(wù)器,建議此值設(shè)置為2;如果是對(duì)數(shù)據(jù)安全要求極高的應(yīng)用,建議設(shè)置為1;# 設(shè)置為0性能最高,但如果發(fā)生故障,數(shù)據(jù)可能會(huì)有丟失的危險(xiǎn)!# 默認(rèn)值1的意思是每一次事務(wù)提交或事務(wù)外的指令都需要把日志寫(xiě)入(flush)硬盤(pán),這是很費(fèi)時(shí)的。# 特別是使用電池供電緩存(Battery backed up cache)時(shí)。設(shè)成2對(duì)于很多運(yùn)用,特別是從MyISAM表轉(zhuǎn)過(guò)來(lái)的是可以的,# 它的意思是不寫(xiě)入硬盤(pán)而是寫(xiě)入系統(tǒng)緩存。日志仍然會(huì)每秒flush到硬盤(pán),所以你一般不會(huì)丟失超過(guò)1-2秒的更新。# 設(shè)成0會(huì)更快一點(diǎn),但安全方面比較差,即使MySQL掛了也可能會(huì)丟失事務(wù)的數(shù)據(jù)。而值2只會(huì)在整個(gè)操作系統(tǒng)掛了時(shí)才可能丟數(shù)據(jù))innodb_flush_log_at_trx_commit = 2# 用來(lái)緩沖日志數(shù)據(jù)的緩沖區(qū)的大小. # 當(dāng)此值快滿(mǎn)時(shí), InnoDB將必須刷新數(shù)據(jù)到磁盤(pán)上. # 由于基本上每秒都會(huì)刷新一次,所以沒(méi)有必要將此值設(shè)置的太大(甚至對(duì)于長(zhǎng)事務(wù)而言) innodb_log_buffer_size = 16M# 在日志組中每個(gè)日志文件的大小. # 你應(yīng)該設(shè)置日志文件總合大小到你緩沖池大小的25%~100% # 來(lái)避免在日志文件覆寫(xiě)上不必要的緩沖池刷新行為. # 不論如何, 請(qǐng)注意一個(gè)大的日志文件大小會(huì)增加恢復(fù)進(jìn)程所需要的時(shí)間innodb_log_file_size = 1024M# 在日志組中的文件總數(shù). # 通常來(lái)說(shuō)2~3是比較好的. innodb_log_files_in_group = 3# InnoDB的日志文件所在位置. 默認(rèn)是MySQL的datadir. # 你可以將其指定到一個(gè)獨(dú)立的硬盤(pán)上或者一個(gè)RAID1卷上來(lái)提高其性能 #innodb_log_group_home_dir# 在InnoDB緩沖池中最大允許的臟頁(yè)面的比例. # 如果達(dá)到限額, InnoDB會(huì)開(kāi)始刷新他們防止他們妨礙到干凈數(shù)據(jù)頁(yè)面. # 這是一個(gè)軟限制,不被保證絕對(duì)執(zhí)行. innodb_max_dirty_pages_pct = 90# InnoDB用來(lái)刷新日志的方法. # 表空間總是使用雙重寫(xiě)入刷新方法 # 默認(rèn)值是 “fdatasync”, 另一個(gè)是 “O_DSYNC”. innodb_flush_method=O_DSYNC# 在被回滾前,一個(gè)InnoDB的事務(wù)應(yīng)該等待一個(gè)鎖被批準(zhǔn)多久. # InnoDB在其擁有的鎖表中自動(dòng)檢測(cè)事務(wù)死鎖并且回滾事務(wù). # 如果你使用 LOCK TABLES 指令, 或者在同樣事務(wù)中使用除了InnoDB以外的其他事務(wù)安全的存儲(chǔ)引擎 # 那么一個(gè)死鎖可能發(fā)生而InnoDB無(wú)法注意到. # 這種情況下這個(gè)timeout值對(duì)于解決這種問(wèn)題就非常有幫助. innodb_lock_wait_timeout = 30[mysqldump]# 不要在將內(nèi)存中的整個(gè)結(jié)果寫(xiě)入磁盤(pán)之前緩存. 在導(dǎo)出非常巨大的表時(shí)需要此項(xiàng)quickmax_allowed_packet = 64M[mysql]no-auto-rehash[myisamchk]key_buffer_size = 512Msort_buffer_size = 512Mread_buffer = 8Mwrite_buffer = 8M[mysqlhotcopy]interactive-timeout[mysqld_safe]# 增加每個(gè)進(jìn)程的可打開(kāi)文件數(shù)量. # 警告: 確認(rèn)你已經(jīng)將全系統(tǒng)限制設(shè)定的足夠高! # 打開(kāi)大量表需要將此值設(shè)大open-files-limit = 8192log-error=/usr/local/mysql/mysqld.logpid-file=/usr/local/mysql/mysqld.pid

MYSQL的性能優(yōu)化不單單是這些內(nèi)容,還有很多大家可以在我們站上搜索其它MYSQL性能優(yōu)化方案


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到MYSQL教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
国产精品av在线播放| av激情亚洲男人天堂| 成人精品视频一区| 国产精品天天看天天狠| 精品国产成人av在线免| 飘雪影视在线观看免费观看| 中文字幕在线视频久| www.污污视频| 91精品国产手机| 91精品福利观看| 亚洲精品国产美女| 麻豆av免费看| 亚洲女色av| 人妻换人妻a片爽麻豆| 欧美三级电影网| 精品国产av 无码一区二区三区| 国产日韩欧美夫妻视频在线观看| 中文在线一区二区三区| 人妻久久久一区二区三区| 国产中文精品久高清在线不| 欧美日韩在线播放三区| 黄色免费直接看| 欧美在线播放一区二区| 亚洲精品中文字幕女同| 精品国产乱码久久久久久久软件| 欧美日韩国产精品专区| 国产欧美综合精品一区二区| 中文字幕无线码一区| 国产日韩欧美在线播放不卡| 精品国产1区| 丁香天五香天堂综合| 中文一区二区在线观看| 91首页免费视频| 蜜桃视频第一区免费观看| 成人av免费播放| 亚洲精品电影网| 一级免费黄色录像| 欧美一卡二卡三卡| 国产欧美日本一区视频| 日本精品一区二区三区高清| 国产熟女一区二区三区五月婷| 洋洋成人永久网站入口| 91一区二区三区在线| 婷婷综合一区| 国产a级片视频| 免费无码国产精品| 国产精品一区二区午夜嘿嘿嘿小说| 热99re久久精品精品免费| 中国精品一区二区| www日韩视频| 欧美亚洲国产精品久久| 成人激情视频在线观看| 欧美偷窥清纯综合图区| 欧美日韩一区二区三区视频| 成人自拍偷拍| 啊啊啊啊啊好爽| 在线观看三级视频| 亚洲成熟女性毛茸茸| 欧美.日韩.国产.一区.二区| www日本黄色| 成人免费视频国产| 人人妻人人澡人人爽| 在线免费高清一区二区三区| 亚洲精选一区二区| 国产成人午夜精品影院观看视频| 欧美日韩中文字幕在线| 色综合桃花网| 精品国产乱码久久久久久图片| 高清av电影在线观看| 成人精品水蜜桃| 福利一区在线观看| 欧美日韩一级黄| 春暖花开亚洲一区二区三区| 日本电影欧美片| 欧美电影院免费观看| 黄网站app在线观看下载视频大全官网| 日韩a级作爱片一二三区免费观看| 午夜精品一区二区三区四区| 欧美不卡福利| 精品国产一区一区二区三亚瑟| 一本色道久久88综合亚洲精品ⅰ| 葵司免费一区二区三区四区五区| 国产精品视频中文字幕| 亚洲精品在线免费播放| 羞羞小视频视频| 免费国产黄线在线观看视频| 日本成人免费| 国产伦理一区| 久久久欧美一区二区| 黄色一级大片在线免费看国产一| 天堂在线视频免费观看| 青青草91视频| 成人欧美一区二区三区在线| 亚洲美女av黄| 国产福利久久| 一区二区在线观看免费视频| 日韩国产网站| 久久av资源网| 在线观看欧美日韩| www.激情小说.com| 久久久国际精品| 亚洲+变态+欧美+另类+精品| 久久亚洲成人av| 午夜在线视频观看日韩17c| 久草视频中文在线| 亚洲中文字幕无码中文字| 韩国xxxx做受gayxxxx| 亚洲一区二区三区四区五区六区| 亚洲视频www| 邪态动恶图27期gif| 日韩精品免费一区二区三区竹菊| 欧美在线色图| 3751色影院一区二区三区| 性色av一区二区三区四区| 国产精品一区二区av白丝下载| 日本ー区在线视频| 四虎永久在线观看| 欧美老少做受xxxx高潮| 日本精品久久久久久久久久| 国产高清精品网站| 中文字幕一区二区在线观看视频| 亚洲国产资源| 亚洲福利电影网| 国产高清一区二区三区视频| 久久精品亚洲7777影院| 超碰成人在线免费| 国产精品久久久久久久久久免费| 亚洲精品综合在线观看| 91精品国产色综合久久| 日本精品一区二区三区在线播放视频| 黑人巨大精品一区二区在线| 草草视频在线观看| xf在线a精品一区二区视频网站| www国产无套内射com| 韩国免费在线视频| 老司机精品视频在线| 国产精品日日摸夜夜添夜夜av| 9l视频白拍9色9l视频| 欧美成人禁片在线观看网址| 欧美成人家庭影院| 日本成人黄色网址| 欧美国产亚洲一区| 欧美成年人在线观看| 国产一区二区视频在线播放| 神马久久桃色视频| 亚洲欧美制服另类日韩| 黄色成人在线视频| 久久午夜无码鲁丝片| 色哟哟亚洲精品一区二区| mm131亚洲精品| 欧美一区二区三区在线| 久久se精品一区二区| 免费成人在线网站| 夜夜爽8888| 黄网视频午夜青春| 性色av一区二区三区| 国产羞羞视频在线观看| 91九色露脸| 日韩伦理在线电影| 天天操中文字幕| 国产精品久久久久久久久久小说| 亚洲va欧美va人人爽| 在线国产精品播放| 九九九精品视频| 国产福利电影一区二区三区| www中文在线| 男生女生差差差的视频在线观看| 色小子综合网| 国产成人精品999在线观看| 中文字幕在线观看视频www| 成人直播在线| 宅男深夜国产| 国产精品免费一区| 亚洲国产精品久| 麻豆明星ai换脸视频| 无套内精的网站| 五月天中文字幕一区二区| 亚洲色图插插| 免费一级在线观看播放网址| 亚洲精品大片| 久久.com| 先锋资源中文字幕| 欧美精品一区二区三区蜜桃视频| 午夜激情在线视频| 在线观看视频在线观看| 亚洲区精品久久一区二区三区| 日韩在线一区视频| 美洲精品一卡2卡三卡4卡四卡| 亚洲精品一线二线三线| 日韩免费高清视频| 亚洲深夜福利视频| 欧美最猛黑人xxxxx猛交| 欧美brazzers| 亚洲视频免费观看| 性生活免费网站| 18欧美亚洲精品| 91亚洲一区精品| 一个人在线视频免费观看www| 国产亚洲一区在线| 久久99国产精品久久99| 第一会所sis001亚洲| 色综合一区二区日本韩国亚洲| 久久久久国产精品厨房| 国产精品99久久久久久www| 久久久人成影片免费观看| 午夜精品毛片| 亚洲婷婷丁香| 红桃视频一区二区三区免费| 97精品视频在线观看| 日韩精品欧美大片| www亚洲一区| 国产亚洲精品自在线观看| 日本一级片免费| 在线免费毛片| 女人被爽到呻吟gif动态图下载| 亚洲精品欧美日韩专区| 国产精品日日摸夜夜添夜夜av| sis001亚洲原创区| 欧美精品一区二区三区高清aⅴ| 日韩hmxxxx| 无码人妻一区二区三区一| 亚洲精品第1页| 成人av资源网站| 国产成人自拍在线| 国产欧美久久一区二区三区| 国产精品久久精品牛牛影视| 国产精品一区专区欧美日韩| 制服丝袜av成人在线看| h在线免费观看| 337人体粉嫩噜噜噜| 激情视频在线观看一区二区三区| 精品黑人一区二区三区| 九七影院97影院理论片久久| 日本女优在线视频一区二区| 两根大肉大捧一进一出好爽视频| 羞羞的视频网站| 午夜日韩影院| 国产又粗又长又硬| 国产探花在线播放| 欧美私人情侣网站| 久久精品一区二区三区不卡免费视频| 国产在线观看色| 欧美极品欧美精品欧美视频| 99热这里只有精品5| 在线观看免费电影| 国内老熟妇对白xxxxhd| 国产一区二区免费在线观看| 久久在线视频免费观看| 日韩av电影院| 国产精品视频一二三| 亚洲区 欧美区| 一女被多男玩喷潮视频| 91在线一区二区三区| 国产又大又长又粗又黄| 色天使久久综合网天天| 国产精品尤物| 免费黄色在线播放| 美女视频黄频大全不卡视频在线播放| 久久精品国产亚洲AV无码男同| 残酷重口调教一区二区| 久久这里只有精品首页| 成人在线观看视频app| 欧美亚洲色图视频| 亚洲欧洲一区二区在线播放| av之家在线观看| 天天综合网天天综合| 爆操欧美孕妇| 日本中文一区二区三区| 欧美日韩一区二区视频在线| 国产一区二区三区影院| 夜夜嗨av一区二区三区网页| 成人欧美一区二区三区视频| 美女翘臀白浆直流视频| 色激情天天射综合网| 性刺激综合网| 中文字幕日韩一区二区| 国产精品成人a在线观看| 欧美中文在线| 992tv在线观看在线播放| 亚洲最大的网站| 激情综合五月天| 日本在线观看| 性娇小13――14欧美| 人人干人人看| 亚洲女人被黑人巨大进入al| 亚洲人亚洲人成电影网站色| 久久精品视频国产| 中文字幕av日韩精品| 亚洲av成人精品一区二区三区在线播放| 看av免费毛片手机播放| 婷婷综合久久| 免费不卡欧美自拍视频| 91青青在线视频| 色综合视频在线观看| 天天干狠狠干| 九色porny自拍视频| 免费在线观看一级毛片| 国产啊啊啊视频在线观看| 在线播放中文字幕一区| 日韩福利视频导航| 波多野结衣一二区| 高清久久久久久| 内射后入在线观看一区| 亚洲精品自拍偷拍| 一本色道婷婷久久欧美| 国产精品伦一区二区三区级视频频| 亚洲系列在线观看| 丁香花在线影院| 久久国产精品第一页| 亚洲国产欧美在线| 日本黄色小视频在线观看| 成人av毛片在线观看| 成年人三级视频| 在线观看视频欧美| 国产精品天天摸av网| 老牛影视av一区二区在线观看| 亚洲美女免费在线| 国产高清亚洲一区| 国产精品自产自拍| 日本福利视频在线观看| 香蕉av777xxx色综合一区| 午夜av中文字幕| 最新国产精品拍自在线播放| 亚洲三级黄色在线观看| 91成人网在线观看| 亚洲+变态+欧美+另类+精品| 成人免费观看49www在线观看| 国产三区四区在线观看|