mysql全局變量詳解_第1頁(yè)
mysql全局變量詳解_第2頁(yè)
mysql全局變量詳解_第3頁(yè)
mysql全局變量詳解_第4頁(yè)
mysql全局變量詳解_第5頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

mysql之全局變量詳解mysql全局變量詳解目前通過(guò)自己常用和網(wǎng)絡(luò)配合,整理出來(lái)的,希望能給你們提供便利,請(qǐng)供參考。showglobalvariablesauto_increment_offset自增長(zhǎng)字段從那個(gè)數(shù)開(kāi)始,他的取值范圍是1...65535auto_increment_increment表示自增長(zhǎng)字段每次遞增的量,其默認(rèn)值是1,取值范圍是1...65535.在主主同步配置時(shí),需要將兩臺(tái)服務(wù)器的auto_increment_increment增長(zhǎng)量都配置為2,而要把a(bǔ)uto_increment_offset分別配置為1和2,這樣才可以避免兩臺(tái)服務(wù)器同時(shí)做更新時(shí)自增長(zhǎng)字段的值之間發(fā)生沖突。autocommit設(shè)定MySQL事務(wù)是否自動(dòng)提交,1表示立即提交,0表示需要顯式提交。作用范圍為全局或會(huì)話(huà),可用于配置文件中(但在5.5.8之前的版本中不可用于配置文件),屬于動(dòng)態(tài)變量。1、mysql使用InnoDB的引擎,那么是自動(dòng)開(kāi)啟事務(wù)的,也就是每一條sql都是一個(gè)事務(wù)(除了select)。2、由于第一條的原因,所以我們需要autocommit為on,否則每個(gè)query都要寫(xiě)一個(gè)commit才能提交。3、在mysql的配置中,默認(rèn)缺省autocommit就是為on,這里要注意,不用非要去mysql配置文件中顯示地配置一下。automatic_sp_privileges設(shè)定MySQL服務(wù)器是否為存儲(chǔ)例程的創(chuàng)建賦予其創(chuàng)建存儲(chǔ)例程上的EXECUTE和ALTERROUTINE權(quán)限,默認(rèn)為1(賦予此兩個(gè)權(quán)限給其創(chuàng)建者)。作用范圍為全局。back_log當(dāng)MySQL的主線(xiàn)程在短時(shí)間內(nèi)收到大量連接請(qǐng)求時(shí),其會(huì)花些時(shí)間檢測(cè)已經(jīng)有線(xiàn)程并為新請(qǐng)求啟動(dòng)新線(xiàn)程,back_log參數(shù)的值即為短時(shí)間內(nèi)到達(dá)的請(qǐng)求中有多少可以被接受并等待主MySQL線(xiàn)程進(jìn)行后續(xù)處理。作用范圍為全局,可以用配置文件,非動(dòng)態(tài)變量。basedir=PATH用于指定MySQL的安裝目錄,所有其它的常用相對(duì)路徑都相對(duì)于此處的路徑而言。作用范圍為全局,可用于配置文件中,但屬于非動(dòng)態(tài)變量。big_tables將所有臨時(shí)表存儲(chǔ)在磁盤(pán),而非內(nèi)存中,缺點(diǎn)是如果某個(gè)SQL執(zhí)行時(shí)需要用到臨時(shí)表,則性能會(huì)差很多.binlog_cache_size為每個(gè)session分配的內(nèi)存,在事務(wù)過(guò)程中用來(lái)存儲(chǔ)二進(jìn)制日志的緩存,用于提高記錄bin-log的效率,作用于全局。默認(rèn)值:32768(32K),范圍:4096..4294967295大小選擇:沒(méi)有什么大事務(wù),dml也不是很頻繁的情況下可以設(shè)置小一點(diǎn),建議是1048576(1M).如果事務(wù)大而且多,dml操作也頻繁,則可以適當(dāng)?shù)恼{(diào)大一點(diǎn)(建議2097152—4194304,即2——4M)。binlog_direct_non_transactional_updates參數(shù)默認(rèn)是關(guān)閉的。開(kāi)啟后,不管任何情況對(duì)非事務(wù)表的操作都將記錄binlog。binlog_formatmysql復(fù)制主要有三種方式:基于SQL語(yǔ)句的復(fù)制(statement-basedreplication,SBR),基于行的復(fù)制(row-basedreplication,RBR),混合模式復(fù)制(mixed-basedreplication,MBR)。對(duì)應(yīng)的,binlog的格式也有三種:STATEMENT,ROW,MIXED。(1)STATEMENT模式(SBR)每一條會(huì)修改數(shù)據(jù)的sql語(yǔ)句會(huì)記錄到binlog中。優(yōu)點(diǎn)是并不需要記錄每一條sql語(yǔ)句和每一行的數(shù)據(jù)變化,減少了binlog日志量,節(jié)約IO,提高性能。缺點(diǎn)是在某些情況下會(huì)導(dǎo)致master-slave中的數(shù)據(jù)不一致(如sleep()函數(shù),last_insert_id(),以及user-definedfunctions(udf)等會(huì)出現(xiàn)問(wèn)題)(2)ROW模式(RBR)不記錄每條sql語(yǔ)句的上下文信息,僅需記錄哪條數(shù)據(jù)被修改了,修改成什么樣了。而且不會(huì)出現(xiàn)某些特定情況下的存儲(chǔ)過(guò)程、或function、或trigger的調(diào)用和觸發(fā)無(wú)法被正確復(fù)制的問(wèn)題。缺點(diǎn)是會(huì)產(chǎn)生大量的日志,尤其是altertable的時(shí)候會(huì)讓日志暴漲。(3)MIXED模式(MBR)以上兩種模式的混合使用,一般的復(fù)制使用STATEMENT模式保存binlog,對(duì)于STATEMENT模式無(wú)法復(fù)制的操作使用ROW模式保存binlog,MySQL會(huì)根據(jù)執(zhí)行的SQL語(yǔ)句選擇日志保存方式。binlog_stmt_cache_sizeSizeofthecachetoholdnontransactionalstatementsforthebinarylogduringatransactionbulk_insert_buffer_size為一次插入多條新記錄的INSERT命令分配的緩存區(qū)長(zhǎng)度(默認(rèn)設(shè)置是8M)。character_set_client設(shè)置客戶(hù)端的字符集(作用于Global,Session).Thecharactersetforstatementsthatarrivefromtheclient.character_set_connection作用于Global,SessionThecharactersetusedforliteralsthatdonothaveacharactersetintroducerandfornumber-to-stringconversion.用于沒(méi)有字符集導(dǎo)入符的文字和數(shù)字-字符串轉(zhuǎn)換。character_set_database默認(rèn)數(shù)據(jù)庫(kù)使用的字符集。當(dāng)默認(rèn)數(shù)據(jù)庫(kù)更改時(shí),服務(wù)器則設(shè)置該變量。如果沒(méi)有默認(rèn)數(shù)據(jù)庫(kù),變量的值同character_set_server.character_set_filesystem設(shè)置文件系統(tǒng)的字符集.Thefilesystemcharacterset.character_set_results用于向客戶(hù)端返回查詢(xún)結(jié)果的字符集.character_set_server服務(wù)器的默認(rèn)字符集。character_set_system服務(wù)器用來(lái)保存識(shí)別符的字符集。該值一定是utf8。character_sets_dir字符集安裝目錄。collation_connection連接字符集的校對(duì)規(guī)則。collation_database默認(rèn)數(shù)據(jù)庫(kù)使用的校對(duì)規(guī)則。當(dāng)默認(rèn)數(shù)據(jù)庫(kù)改變時(shí)服務(wù)器則設(shè)置該變量。如果沒(méi)有默認(rèn)數(shù)據(jù)庫(kù),變量的值同collation_server。collation_server服務(wù)器的默認(rèn)校對(duì)規(guī)則。completion_type事務(wù)結(jié)束類(lèi)型:(1)如果該值為0(默認(rèn)),COMMIT和ROLLBACK不受影響。(2)如果該值為1,COMMIT和ROLLBACK分別等同于COMMITANDCHAIN和ROLLBACKANDCHAIN。(新事務(wù)用剛剛結(jié)束的事務(wù)相同的間隔等級(jí)立即啟動(dòng))。(3)如果該值為2,COMMIT和ROLLBACK分別等同于COMM它RELEASE和ROLLBACKRELEASE。(事務(wù)終止后,服務(wù)器斷開(kāi))。concurrent_insert如果為ON(默認(rèn)值),MySQL允許INSERT和SELECT語(yǔ)句在中間沒(méi)有空數(shù)據(jù)塊的MyISAM表中并行運(yùn)行。你可以用--safe或--skip-new啟動(dòng)mysqld關(guān)閉該選項(xiàng)。該變量為整數(shù),有3個(gè)值:0關(guān)1(默認(rèn))在沒(méi)有空數(shù)據(jù)塊的MyISAM表中啟用并行插入2為所有MyISAM表啟用并行插入。如果表有空記錄或正被另一線(xiàn)程使用,新行將插入到表的最后。如果表未使用,MySQL將進(jìn)行普通讀鎖定并將新行插入空記錄。connect_timeoutmysqld服務(wù)器用Badhandshake響應(yīng)前等待連接包的秒數(shù)。datadirMySQL數(shù)據(jù)目錄??梢杂?-datadir選項(xiàng)設(shè)置該變量。default_storage_engine默認(rèn)存儲(chǔ)引擎.默認(rèn)為InnoDB.delay_key_write該選項(xiàng)只適用MyISAM表。它具有下述值可以影響CREATETABLE語(yǔ)句使用的DELAY_KEY_WRITE表選項(xiàng)的處理。OFFDELAY_KEY_WRITE被忽略。ONMySQL在CREATETABLE中用DELAY_KEY_WRITE選項(xiàng)。這是默認(rèn)值。ALL用啟用DELAY_KEY_WRITE選項(xiàng)創(chuàng)建表的相同方法對(duì)所有新打開(kāi)表的進(jìn)行處理。如果啟用了DELAY_KEY_WRITE,說(shuō)明使用該項(xiàng)的表的鍵緩沖區(qū)在每次更新索引時(shí)不被清空,只有關(guān)閉表時(shí)才清空。遮掩蓋可以大大加快鍵的寫(xiě)操作,但如果你使用該特性,你應(yīng)用--myisam-recover選項(xiàng)啟動(dòng)服務(wù)器,為所有MyISAM表添加自動(dòng)檢查(例如,--myisam-recover=BACKUP,FORCE).delayed_insert_limit插入delayed_insert_limit延遲行后,INSERTDELAYED處理器線(xiàn)程檢查是否有掛起的SELECT語(yǔ)句。如果有,在繼續(xù)插入延遲的行之前,允許它們先執(zhí)行。delayed_insert_timeoutINSERTDELAYED處理器線(xiàn)程終止前應(yīng)等待INSERT語(yǔ)句的時(shí)間。delayed_queue_size這是各個(gè)表中處理INSERTDELAYED語(yǔ)句時(shí)隊(duì)列中行的數(shù)量限制。如果隊(duì)列滿(mǎn)了,執(zhí)行INSERTDELAYED語(yǔ)句的客戶(hù)端應(yīng)等待直到隊(duì)列內(nèi)再有空間。div_precision_increment該變量說(shuō)明用/操作符執(zhí)行除操作的結(jié)果可增加的精確度的位數(shù)。默認(rèn)值是4。最小和最大值分別為0和30。下面的示例說(shuō)明了增加默認(rèn)值的結(jié)果。engine_condition_pushdown該變量適用于NDB。默認(rèn)值為0(OFF):如果你執(zhí)行類(lèi)似查詢(xún)SELECT*FROMtWHEREmycol=42,其中mycol為沒(méi)有索引的列,當(dāng)滿(mǎn)了的表掃描每個(gè)NDB節(jié)點(diǎn)時(shí),執(zhí)行該查詢(xún)。每個(gè)節(jié)點(diǎn)使用WHERE條件將每一行發(fā)送給MySQL服務(wù)器。如果engine_condition_pushdown被設(shè)置為1(ON),該條件“pusheddown”給存儲(chǔ)引擎并發(fā)送給NDB節(jié)點(diǎn)。每個(gè)節(jié)點(diǎn)都執(zhí)行掃描,并只向MySQL服務(wù)器發(fā)送回匹配條件的行。expire_logs_days二進(jìn)制日志自動(dòng)刪除的天數(shù)。默認(rèn)值為0,表示“沒(méi)有自動(dòng)刪除”。啟動(dòng)時(shí)和二進(jìn)制日志循環(huán)時(shí)可能刪除。flush如果用--flush選項(xiàng)啟動(dòng)mysqld該值為ON。flush_time如果設(shè)為非零值,每隔flush_time秒則關(guān)閉所有表以釋放硬盤(pán)資源并同步未清空的數(shù)據(jù)。我們建議只在Windows9x或Me,或有最小資源的系統(tǒng)中使用該選項(xiàng).foreign_key_checksIfsetto1(thedefault),foreignkeyconstraintsforInnoDBtablesarechecked.Ifsetto0,foreignkeyconstraintsareignored,withacoupleofexceptions.Whenre-creatingatablethatwasdropped,anerrorisreturnedifthetabledefinitiondoesnotconformtotheforeignkeyconstraintsreferencingthetable.Likewise,anALTERTABLEoperationreturnsanerrorifaforeignkeydefinitionisincorrectlyformed.ft_boolean_syntax使用INBOOLEANMODE執(zhí)行的布爾全文搜索支持的操作符系列。參見(jiàn)12.7.1節(jié),“布爾全文搜索”。默認(rèn)變量值為'+-><()~*:""&|'。更改這些值的規(guī)則是:o操作符函數(shù)由其在字符串內(nèi)的位置決定。o替換值必須是14個(gè)字符。o每個(gè)字符必須為ASCII碼非文字?jǐn)?shù)字字符。o第1個(gè)或第2個(gè)字符必須為空格。o除非語(yǔ)句在第11個(gè)字符和第12個(gè)字符處引用了操作符,否則不允許復(fù)制。這兩個(gè)字符可以不相同,但這是唯一可能的兩個(gè)。o位置10、13和14(默認(rèn)設(shè)置為‘:’、‘&’和‘|’)保留用于將來(lái)擴(kuò)展。ft_max_word_lenFULLTEXT索引中所包含的字的最大長(zhǎng)度。注釋?zhuān)焊脑撟兞亢蟊仨氈亟‵ULLTEXT索引。應(yīng)使用REPAIRTABLEtbl_nameQUICK。ft_min_word_lenFULLTEXT索引中所包含的字的最小長(zhǎng)度。注釋?zhuān)焊脑撟兞亢蟊仨氈亟‵ULLTEXT索引。應(yīng)使用REPAIRTABLEtbl_nameQUICK。ft_query_expansion_limit使用WITHQUERYEXPANSION進(jìn)行全文搜索的最大匹配數(shù)。ft_stopword_file用于讀取全文搜索的停止字清單的文件。該文件中的所有字都會(huì)用到;注釋不重要。默認(rèn)情況下,使用內(nèi)嵌式停止字清單(如myisam/ft_static.c文件中所定義)。將該變量設(shè)置為空字符串('')則禁用停止字過(guò)濾。注釋?zhuān)焊脑撟兞炕蛲V棺治募膬?nèi)容后必須重建FULLTEXT索引。應(yīng)使用REPAIRTABLEtbl_nameQUICK。general_logWhetherthegeneralquerylogisenabled.Thevaluecanbe0(orOFF)todisablethelogor1(orON)toenablethelog.Thedefaultvaluedependsonwhetherthe--generallogoptionisgiven.Thedestinationforlogoutputiscontrolledbythelogoutput.是否啟用了通用查詢(xún)?nèi)罩?。值可以?(或關(guān)閉)禁用日志或1(或在)啟用日志。默認(rèn)值取決于——通用日志選項(xiàng)。日志輸出的目的地是由日志輸出控制.general_log_fileThenameofthegeneralquerylogfile.Thedefaultvalueishost_name.log,buttheinitialvaluecanbechangedwiththe--general_log_fileoption.一般查詢(xún)?nèi)罩疚募拿Q(chēng)。默認(rèn)值是主機(jī)名。日志,但初始值可以改變——通用日志文件選項(xiàng)。group_concat_max_len允許的GROUP_CONCAT()函數(shù)結(jié)果的最大長(zhǎng)度。have_compress是否zlib壓縮庫(kù)適合該服務(wù)器。如果不適合,不能使用COMPRESS()和UNCOMPRESS()函數(shù)。have_crypt是否crypt()系統(tǒng)調(diào)用適合該服務(wù)器。如果不適合,不能使用CRYPT()函數(shù)。have_csv如果mysqld支持ARCHIVE表則為YES,否則為NO。have_dynamic_loadingYESifmysqldsupportsdynamicloadingofplugins,NOifnot.IfthevalueisNO,youcannotuseoptionssuchas--plugin-loadtoloadpluginsatserverstartup,ortheINSTALLPLUGINstatementtoloadpluginsatruntime.have_geometry是否服務(wù)器支持空間數(shù)據(jù)類(lèi)型。have_innodb如果mysqld支持InnoDB表則為YES。如果使用--skip-innodb則為DISABLED。have_ndbcluster如果mysqld支持NDBCLUSTER表則為YES。如果使用了--skip-ndbcluster則為DISABLED。have_openssl如果mysqld支持客戶(hù)端/服務(wù)器協(xié)議的SSL(加密)則為YES。have_partitioningYESifmysqldsupportspartitioning.have_profilingYESifstatementprofilingcapabilityispresent,NOifnot.Ifpresent,theprofilingsystemvariablecontrolswhetherthiscapabilityisenabledordisabled.have_query_cache如果mysqld支持查詢(xún)緩存則為YES。have_rtree_keysRTREE索引是否可用。(用于MyISAM表的空間索引)have_sslYESifmysqldsupportsSSLconnections,NOifnot.DISABLEDindicatesthattheserverwascompiledwithSSLsupport,butwasnotstartedwiththeappropriate--ssl-xxxoptions.Formoreinformation.have_symlink是否啟用符號(hào)鏈接支持。在Unix中需要用于支持DATADIRECTORY和INDEXDIRECTORY表選項(xiàng)。hostnameTheserversetsthisvariabletotheserverhostnameatstartup.init_connect服務(wù)器為每個(gè)連接的客戶(hù)端執(zhí)行的字符串。字符串由一個(gè)或多個(gè)SQL語(yǔ)句組成。要想指定多個(gè)語(yǔ)句,用分號(hào)間隔開(kāi)。例如,每個(gè)客戶(hù)端開(kāi)始時(shí)默認(rèn)啟用autocommit模式。沒(méi)有全局服務(wù)器變量可以規(guī)定autocommit默認(rèn)情況下應(yīng)禁用,但可以用init_connect來(lái)獲得相同的效果.init_file啟動(dòng)服務(wù)器時(shí)用--init-file選項(xiàng)指定的文件名。文件中包含服務(wù)器啟動(dòng)時(shí)要執(zhí)行的SQL語(yǔ)句。每個(gè)語(yǔ)句必須在同一行中并且不能包括注釋。init_slave該變量類(lèi)似init_connect,但是每次SQL線(xiàn)程啟動(dòng)時(shí)從服務(wù)器應(yīng)執(zhí)行該字符串。該字符串的格式與init_connect變量相同。innodb_adaptive_flushingSpecifieswhethertodynamicallyadjusttherateofflushingdirtypagesintheInnoDBbufferpoolbasedontheworkload.AdjustingtheflushratedynamicallyisintendedtoavoidburstsofI/Oactivity.Thissettingisenabledbydefault.SeeSection,“ConfiguringInnoDBBufferPoolFlushing”formorenformation.innodb_adaptive_hash_indexWhethertheInnoDBadaptivehashindexisenabledordisabled.Itmaybedesirable,dependingonyourworkload,todynamicallyenableordisableadaptivehashindexingtoimprovequeryperformance.Becausetheadaptivehashindexmaynotbeusefulforallworkloads,conductbenchmarkswithitbothenabledanddisabled,usingrealisticworkloads.innodb_additional_mem_pool_sizeInnoDB用來(lái)存儲(chǔ)數(shù)據(jù)目錄信息&其它內(nèi)部數(shù)據(jù)結(jié)構(gòu)的內(nèi)存池的大小。你應(yīng)用程序里的表越多,你需要在這里分配越多的內(nèi)存。如果InnoDB用光了這個(gè)池內(nèi)的內(nèi)存,InnoDB開(kāi)始從操作系統(tǒng)分配內(nèi)存,并且往MySQL錯(cuò)誤日志寫(xiě)警告信息。默認(rèn)值是1MB。innodb_autoextend_increment當(dāng)自動(dòng)擴(kuò)展表空間被填滿(mǎn)之時(shí),為擴(kuò)展而增加的尺寸(MB為單位)。默認(rèn)值是8。這個(gè)選項(xiàng)可以在運(yùn)行時(shí)作為全局系統(tǒng)變量而改變。innodb_autoinc_lock_modeThelockmodetouseforgeneratingauto-incrementvalues.Thepermissiblevaluesare0,1,or2,for“traditional”,“consecutive”,or“interleaved”lockmode,respectively.innodb_buffer_pool_instancesDividesthebufferpoolintoauser-specifiednumberofseparateregions,eachwithitsownLRUlistandrelateddatastructures,toreducecontentionduringconcurrentmemoryreadandwriteoperations.Thisoptiononlytakeseffectwhenyousetinnodb_buffer_pool_sizetoavalueof1GBormore.Thetotalsizeyouspecifyisdividedamongallthebufferpools.Forbestefficiency,specifyacombinationofinnodb_buffer_pool_instancesandinnodb_buffer_pool_sizesothateachbufferpoolinstanceisatleast1gigabyte.innodb_buffer_pool_sizeInnoDB用來(lái)緩存它的數(shù)據(jù)和索引的內(nèi)存緩沖區(qū)的大小。你把這個(gè)值設(shè)得越高,訪(fǎng)問(wèn)表中數(shù)據(jù)需要得磁盤(pán)I/O越少。在一個(gè)專(zhuān)用的數(shù)據(jù)庫(kù)服務(wù)器上,你可以設(shè)置這個(gè)參數(shù)達(dá)機(jī)器物理內(nèi)存大小的80%。盡管如此,還是不要把它設(shè)置得太大,因?yàn)閷?duì)物理內(nèi)存的競(jìng)爭(zhēng)可能在操作系統(tǒng)上導(dǎo)致內(nèi)存調(diào)度。innodb_change_bufferingWhetherInnoDBperformschangebuffering,anoptimizationthatdelayswriteoperationstosecondaryindexessothattheI/Ooperationscanbeperformedsequentially.Thepermittedvaluesaredescribedinthefollowingtable.innodb_checksumsInnoDB在所有對(duì)磁盤(pán)的頁(yè)面讀取上使用校驗(yàn)和驗(yàn)證以確保額外容錯(cuò)防止硬件損壞或數(shù)據(jù)文件。盡管如此,在一些少見(jiàn)的情況下(比如運(yùn)行標(biāo)準(zhǔn)檢查之時(shí))這個(gè)額外的安全特征是不必要的。在這些情況下,這個(gè)選項(xiàng)(默認(rèn)是允許的)可以用--skip-innodb-checksums來(lái)關(guān)閉。innodb_commit_concurrencyThenumberofthreadsthatcancommitatthesametime.Avalueof0(thedefault)permitsanynumberoftransactionstocommitsimultaneously.innodb_concurrency_ticketsDeterminesthenumberofthreadsthatcanenterInnoDBconcurrently.AthreadisplacedinaqueuewhenittriestoenterInnoDBifthenumberofthreadshasalreadyreachedtheconcurrencylimit.WhenathreadispermittedtoenterInnoDB,itisgivenanumberof“freetickets”equaltothevalueofinnodb_concurrency_tickets,andthethreadcanenterandleaveInnoDBfreelyuntilithasusedupitstickets.Afterthatpoint,thethreadagainbecomessubjecttotheconcurrencycheck(andpossiblequeuing)thenexttimeittriestoenterInnoDB.Thedefaultvalueis5000asofMySQL5.6.6,500beforethat.innodb_data_file_path到單獨(dú)數(shù)據(jù)文件和它們尺寸的路徑。通過(guò)把innodb_data_home_dir連接到這里指定的每個(gè)路徑,到每個(gè)數(shù)據(jù)文件的完整目錄路徑可被獲得。文件大小通過(guò)給尺寸值尾加M或G以MB或者GB(1024MB)為單位被指定。文件尺寸的和至少是10MB。在一些操作系統(tǒng)上,文件必須小于2GB。如果你沒(méi)有指定innodb_data_file_path,開(kāi)始的默認(rèn)行為是創(chuàng)建一個(gè)單獨(dú)的大小10MB名為ibdata1的自擴(kuò)展數(shù)據(jù)文件。在那些支持大文件的操作系統(tǒng)上,你可以設(shè)置文件大小超過(guò)4GB。你也可以使用原始磁盤(pán)分區(qū)作為數(shù)據(jù)文件.innodb_data_home_dir目錄路徑對(duì)所有InnoDB數(shù)據(jù)文件的共同部分。如果你不設(shè)置這個(gè)值,默認(rèn)是MySQL數(shù)據(jù)目錄。你也可以指定這個(gè)值為一個(gè)空字符串,在這種情況下,你可以在innodb_data_file_path中使用絕對(duì)文件路徑。innodb_doublewrite默認(rèn)地,InnoDB存儲(chǔ)所有數(shù)據(jù)兩次,第一次存儲(chǔ)到doublewrite緩沖,然后存儲(chǔ)到確實(shí)的數(shù)據(jù)文件。這個(gè)選項(xiàng)可以被用來(lái)禁止這個(gè)功能。類(lèi)似于innodb_checksums,這個(gè)選項(xiàng)默認(rèn)是允許的;因?yàn)闃?biāo)準(zhǔn)檢查或在對(duì)頂級(jí)性能的需要超過(guò)對(duì)數(shù)據(jù)完整性或可能故障的關(guān)注之時(shí),這個(gè)選項(xiàng)用--skip-innodb-doublewrite來(lái)關(guān)閉。innodb_fast_shutdown如果你把這個(gè)參數(shù)設(shè)置為0,InnoDB在關(guān)閉之前做一個(gè)完全凈化和一個(gè)插入緩沖合并。這些操作要花幾分鐘時(shí)間,設(shè)置在極端情況下要幾個(gè)小時(shí)。如果你設(shè)置這個(gè)參數(shù)為1,InnoDB在關(guān)閉之時(shí)跳過(guò)這些操作。默認(rèn)值為1。如果你設(shè)置這個(gè)值為2(在Netware無(wú)此值),InnoDB將刷新它的日志然后冷關(guān)機(jī),仿佛MySQL崩潰一樣。已提交的事務(wù)不會(huì)被丟失,但在下一次啟動(dòng)之時(shí)會(huì)做一個(gè)崩潰恢復(fù)。innodb_file_formatThefileformattousefornewInnoDBtables.Currently,AntelopeandBarracudaaresupported.Thisappliesonlyfortablesthathavetheirowntablespace,soforittohaveaneffect,innodb_file_per_tablemustbeenabled.TheBarracudafileformatisrequiredforcertainInnoDBfeaturessuchastablecompression.BeawarethatALTERTABLEoperationsthatrecreateInnoDBtables(ALGORITHM=COPY)willusethecurrentinnodb_file_formatsetting(theconditionsoutlinedabovestillapply).innodb_file_format_checkThisvariablecanbesetto1or0atserverstartuptoenableordisablewhetherInnoDBchecksthefileformattaginthesystemtablespace(forexample,AntelopeorBarracuda).IfthetagischeckedandishigherthanthatsupportedbythecurrentversionofInnoDB,anerroroccursandInnoDBdoesnotstart.Ifthetagisnothigher,InnoDBsetsthevalueofinnodb_file_format_maxtothefileformattag.innodb_file_format_maxAtserverstartup,InnoDBsetsthevalueofthisvariabletothefileformattaginthesystemtablespace(forexample,AntelopeorBarracuda).Iftheservercreatesoropensatablewitha“higher”fileformat,itsetsthevalueofinnodb_file_format_maxtothatformat.innodb_file_per_table這個(gè)選項(xiàng)致使InnoDB用自己的.ibd文件為存儲(chǔ)數(shù)據(jù)和索引創(chuàng)建每一個(gè)新表,而不是在共享表空間中創(chuàng)建.innodb_flush_log_at_trx_commit當(dāng)innodb_flush_log_at_trx_commit被設(shè)置為0,日志緩沖每秒一次地被寫(xiě)到日志文件,并且對(duì)日志文件做到磁盤(pán)操作的刷新,但是在一個(gè)事務(wù)提交不做任何操作。當(dāng)這個(gè)值為1(默認(rèn)值)之時(shí),在每個(gè)事務(wù)提交時(shí),日志緩沖被寫(xiě)到日志文件,對(duì)日志文件做到磁盤(pán)操作的刷新。當(dāng)設(shè)置為2之時(shí),在每個(gè)提交,日志緩沖被寫(xiě)到文件,但不對(duì)日志文件做到磁盤(pán)操作的刷新。盡管如此,在對(duì)日志文件的刷新在值為2的情況也每秒發(fā)生一次。我們必須注意到,因?yàn)檫M(jìn)程安排問(wèn)題,每秒一次的刷新不是100%保證每秒都發(fā)生。你可以通過(guò)設(shè)置這個(gè)值不為1來(lái)獲得較好的性能,但隨之你會(huì)在一次崩潰中損失二分之一價(jià)值的事務(wù)。如果你設(shè)置這個(gè)值為0,那么任何mysqld進(jìn)程的崩潰會(huì)刪除崩潰前最后一秒的事務(wù),如果你設(shè)置這個(gè)值為2,那么只有操作系統(tǒng)崩潰或掉電才會(huì)刪除最后一秒的事務(wù)。盡管如此,InnoDB的崩潰恢復(fù)不受影響,而且因?yàn)檫@樣崩潰恢復(fù)開(kāi)始作用而不考慮這個(gè)值。注意,許多操作系統(tǒng)和一些磁盤(pán)硬件會(huì)欺騙刷新到磁盤(pán)操作。盡管刷新沒(méi)有進(jìn)行,你可以告訴mysqld刷新已經(jīng)進(jìn)行。即使設(shè)置這個(gè)值為1,事務(wù)的持久程度不被保證,且在最壞情況下掉電甚至?xí)茐腎nnoDB數(shù)據(jù)庫(kù)。在SCSI磁盤(pán)控制器中,或在磁盤(pán)自身中,使用有后備電池的磁盤(pán)緩存會(huì)加速文件刷新并且使得操作更安全。你也可以試著使用Unix命令hdparm來(lái)在硬件緩存中禁止磁盤(pán)寫(xiě)緩存,或使用其它一些對(duì)硬件提供商專(zhuān)用的命令。這個(gè)選項(xiàng)的默認(rèn)值是1。innodb_flush_method這個(gè)選項(xiàng)只在Unix系統(tǒng)上有效。如果這個(gè)選項(xiàng)被設(shè)置為fdatasync(默認(rèn)值),InnoDB使用fsync()來(lái)刷新數(shù)據(jù)和日志文件。如果被設(shè)置為O_DSYNC,InnoDB使用O_SYNC來(lái)打開(kāi)并刷新日志文件,但使用fsync()來(lái)刷新數(shù)據(jù)文件。如果O_DIRECT被指定了(在一些GNU/Linux版本商可用),InnoDB使用O_DIRECT來(lái)打開(kāi)數(shù)據(jù)文件,并使用fsync()來(lái)刷新數(shù)據(jù)和日志文件。注意,InnoDB使用fsync()來(lái)替代fdatasync(),并且它默認(rèn)不使用O_DSYNC,因?yàn)檫@個(gè)值在許多Unix變種上已經(jīng)發(fā)生問(wèn)題。innodb_force_load_corruptedLetsInnoDBloadtablesatstartupthataremarkedascorrupted.Useonlyduringtroubleshooting,torecoverdatathatisotherwiseinaccessible.Whentroubleshootingiscomplete,turnthissettingbackoffandrestarttheserver.innodb_force_recovery警告:這個(gè)選項(xiàng)僅在一個(gè)緊急情況下被定義,當(dāng)時(shí)你想要從損壞的數(shù)據(jù)庫(kù)轉(zhuǎn)儲(chǔ)表。可能的值為從1到6。作為一個(gè)安全措施,當(dāng)這個(gè)選項(xiàng)值大于零之時(shí),InnoDB阻止用戶(hù)修改數(shù)據(jù)。innodb_io_capacityTheinnodb_io_capacityparametersetsanupperlimitontheI/OactivityperformedbytheInnoDBbackgroundtasks,suchasflushingpagesfromthebufferpoolandmergingdatafromthechangebuffer.Thedefaultvalueis200.ForbusysystemscapableofhigherI/Orates,youcansetahighervalueatserverstartup,tohelptheserverhandlethebackgroundmaintenanceworkassociatedwithahighrateofrowchanges.Theinnodb_io_capacitylimitisatotallimitforallbufferpoolinstances.Whendirtypagesareflushed,theinnodb_io_capacitylimitisdividedequallyamongbufferpoolinstances.Forsystemswithindividual5400RPMor7200RPMdrives,youmightlowerthevaluetotheformerdefaultof100.ThisparametershouldbesettoapproximatelythenumberofI/Ooperationsthatthesystemcanperformpersecond.Ideally,keepthissettingaslowaspractical,butnotsolowthatthesebackgroundactivitiesInnoDBSystemVariables2071fallbehind.Ifthevalueistoohigh,dataisremovedfromthebufferpoolandinsertbuffertooquicklytoprovidesignificantbenefitfromthecaching.ThevaluerepresentsanestimatedproportionoftheI/Ooperationspersecond(IOPS)availabletoolder-generationdiskdrivesthatcouldperformabout100IOPS.Thecurrentdefaultof200reflectsthatmodernstoragedevicesarecapableofmuchhigherI/Orates.Ingeneral,youcanincreasethevalueasafunctionofthenumberofdrivesusedforInnoDBI/O,particularlyfastdrivescapableofhighnumbersofIOPS.Forexample,systemsthatusemultipledisksorsolid-statedisksforInnoDBarelikelytobenefitfromtheabilitytocontrolthisparameter.innodb_large_prefixEnablethisoptiontoallowindexkeyprefixeslongerthan767bytes(upto3072bytes)forInnoDBtablesthatusetheDYNAMICandCOMPRESSEDrowformats.(Creatingsuchtablesalsorequirestheoptionvaluesinnodb_file_format=barracudaandinnodb_file_per_table=true.)innodb_lock_wait_timeoutInnoDB事務(wù)在被回滾之前可以等待一個(gè)鎖定的超時(shí)秒數(shù)。InnoDB在它自己的鎖定表中自動(dòng)檢測(cè)事務(wù)死鎖并且回滾事務(wù)。InnoDB用LOCKTABLES語(yǔ)句注意到鎖定設(shè)置。默認(rèn)值是50秒。為在一個(gè)復(fù)制建立中最大可能的持久程度和連貫性,你應(yīng)該在主服務(wù)器上的f文件里使用innodb_flush_log_at_trx_commit=1和sync-binlog=1。innodb_locks_unsafe_for_binlog這個(gè)選項(xiàng)在InnoDB搜索和索引掃描中關(guān)閉下一鍵鎖定。這個(gè)選項(xiàng)的默認(rèn)值是假(false)。正常地,InnoDB使用一個(gè)被稱(chēng)為next-keylocking的算法。當(dāng)搜索或掃描一個(gè)表索引之時(shí),InnoDB以這樣一種方式實(shí)行行級(jí)鎖定,它對(duì)任何遇到的索引記錄設(shè)置共享的或獨(dú)占的鎖定。因此,行級(jí)鎖定實(shí)際是索引記錄鎖定。InnoDB對(duì)索引記錄設(shè)置的鎖定也影響被鎖定索引記錄之前的“gap”。如果一個(gè)用戶(hù)對(duì)某一索引內(nèi)的記錄R又共享的或獨(dú)占的鎖定,另一個(gè)用戶(hù)不能立即在R之前以索引的順序插入一個(gè)新的索引記錄。這個(gè)選項(xiàng)導(dǎo)致InnoDB不在搜索或索引掃描中使用下一鍵鎖定。下一鍵鎖定仍然被用來(lái)確保外鍵強(qiáng)制及重復(fù)鍵核查.innodb_log_buffer_sizeInnoDB用來(lái)往磁盤(pán)上的日志文件寫(xiě)操作的緩沖區(qū)的大小。明智的值是從1MB到8MB。默認(rèn)的是1MB。一個(gè)大的日志緩沖允許大型事務(wù)運(yùn)行而不需要在事務(wù)提交之前往磁盤(pán)寫(xiě)日志。因此,如果你有大型事務(wù),使日志緩沖區(qū)更大以節(jié)約磁盤(pán)I/O。innodb_log_file_size在日志組里每個(gè)日志文件的大小。在32位計(jì)算機(jī)上日志文件的合并大小必須少于4GB。默認(rèn)是5MB。明智的值從1MB到N分之一緩沖池大小,其中N是組里日志文件的數(shù)目。值越大,在緩沖池越少需要檢查點(diǎn)刷新行為,以節(jié)約磁盤(pán)I/O。但更大的日志文件也意味這在崩潰時(shí)恢復(fù)得更慢。innodb_log_files_in_group在日志組里日志文件的數(shù)目。InnoDB以循環(huán)方式寫(xiě)進(jìn)文件。默認(rèn)是2(推薦)。innodb_log_group_home_dir到InnoDB日志文件的目錄路徑。它必須有和innodb_log_arch_dir一樣的值。如果你不指定任何InnoDB日志參數(shù),默認(rèn)的是在MySQL數(shù)據(jù)目錄里創(chuàng)建兩個(gè)5MB大小名為ib_logfile0和ib_logfile1的文件。innodb_max_dirty_pages_pct這是一個(gè)范圍從0到100的整數(shù)。默認(rèn)是90。InnoDB中的主線(xiàn)程試著從緩沖池寫(xiě)頁(yè)面,使得臟頁(yè)(沒(méi)有被寫(xiě)的頁(yè)面)的百分比不超過(guò)這個(gè)值。如果你有SUPER權(quán)限,這個(gè)百分比可以在服務(wù)器運(yùn)行時(shí)按下面來(lái)改變:SETGLOBALinnodb_max_dirty_pages_pct=value;innodb_max_purge_lag這個(gè)選項(xiàng)控制在凈化操作被滯后之時(shí),如何延遲INSERT,UPDATE和DELETE操作。這個(gè)參數(shù)的默認(rèn)值是零,意為無(wú)延遲。這個(gè)選項(xiàng)可以在運(yùn)行時(shí)作為全局系統(tǒng)變量而被改變。InnoDB事務(wù)系統(tǒng)維持一個(gè)事務(wù)列表,該列表有被UPDATE或DELETE操作標(biāo)志為刪除的索引記錄。讓這個(gè)列表的長(zhǎng)度為purge_lag。當(dāng)purge_lag超過(guò)innodb_max_purge_lag之時(shí),每個(gè)INSERT,UPDATE和DELETE操作延遲((purge_lag/innodb_max_purge_lag)*10)-5毫秒。在凈化批處理的開(kāi)始,延遲每隔10秒計(jì)算。如果因?yàn)橐粋€(gè)舊的可以看到行被凈化的一致的讀查看,刪除操作不被延遲。對(duì)有問(wèn)題的工作量,典型設(shè)置可能是1百萬(wàn),假設(shè)我們的事務(wù)很小,只有100字節(jié)大小,我們就可以允許在我們的表之中有100MB未凈化的行。innodb_mirrored_log_groups我們?yōu)閿?shù)據(jù)庫(kù)保持的日志組內(nèi)同樣拷貝的數(shù)量。當(dāng)前這個(gè)值應(yīng)該被設(shè)為1。innodb_old_blocks_pctSpecifiestheapproximatepercentageoftheInnoDBbufferpoolusedfortheoldblocksublist.Therangeofvaluesis5to95.Thedefaultvalueis37(thatis,3/8ofthepool).innodb_old_blocks_timeNon-zerovaluesprotectagainstthebufferpoolbeingfilledupbydatathatisreferencedonlyforabriefperiod,suchasduringafulltablescan.Increasingthisvalueoffersmoreprotectionagainstfulltablescansinterferingwithdatacachedinthebufferpool.Specifieshowlonginmilliseconds(ms)ablockinsertedintotheoldsublistmuststaythereafteritsfirstaccessbeforeitcanbemovedtothenewsublist.Ifthevalueis0,ablockinsertedintotheoldsublistmovesimmediatelytothenewsublistthefirsttimeitisaccessed,nomatterhowsoonafterinsertiontheaccessoccurs.Ifthevalueisgreaterthan0,blocksremainintheoldsublistuntilanaccessoccursatleastthatmanymsafterthefirstaccess.Forexample,avalueof1000causesblockstostayintheoldsublistfor1secondafterthefirstaccessbeforetheybecomeeligibletomovetothenewsublist.Thedefaultvalueis1000asofMySQL5.6.6,0beforethat.innodb_open_files在InnoDB中,這個(gè)選項(xiàng)僅與你使用多表空間時(shí)有關(guān)。它指定InnoDB一次可以保持打開(kāi)的.ibd文件的最大數(shù)目。最小值是10。默認(rèn)值300。innodb_print_all_deadlocksWhenthisoptionisenabled,informationaboutalldeadlocksinInnoDBusertransactionsisrecordedinthemysqlderrorlog.Otherwise,youseeinformationaboutonlythelastdeadlock,usingtheSHOWENGINEINNODBSTATUScommand.AnoccasionalInnoDBdeadlockisnotnecessarilyanissue,becauseInnoDBdetectstheconditionimmediately,androllsbackoneofthetransactionsautomatically.Youmightusethisoptiontotroubleshootwhydeadlocksarehappeningifanapplicationdoesnothaveappropriateerror-handlinglogictodetecttherollbackandretryitsoperation.AlargenumberofdeadlocksmightindicatetheneedtorestructuretransactionsthatissueDMLorSELECT...FORUPDATEstatementsformultipletables,sothateachtransactionaccessesthetablesinthesameorder,thusavoidingthedeadlockcondition.innodb_purge_batch_sizeThegranularityofchanges,expressedinunitsofredologrecords,thattriggerapurgeoperation,flushingthechangedbufferpoolblockstodisk.Thisoptionisintendedfortuningperformanceincombinationwiththesettinginnodb_purge_threads=n,andtypicalusersdonotneedtomodifyit.innodb_purge_threadsThenumberofbackgroundthreadsdevotedtotheInnoDBpurgeoperation.Thenewdefaultandminimumvalueof1inMySQL5.6.5signifiesthatthepurgeoperationisalwaysperformedbybackgroundthreads,neveraspartofthemasterthread.Non-zerovaluesrunsthepurgeoperationinoneormorebackgroundthreads,whichcanreduceinternalcontentionwithinInnoDB,improvingscalability.Increasingthevaluetogreaterthan1createsthatmanyseparatepurgethreads,whichcanimproveefficiencyonsystemswhereDMLoperationsareperformedonmultipletables.Themaximumis32.innodb_random_read_aheadEnablestherandomread-aheadtechniqueforoptimizingInnoDBI/O.Randomread-aheadfunctionalitywasremovedfromtheInnoDBPlugin(version1.0.4)andwasthereforenotincludedinMySQL5.5.0whenInnoDBPluginbecamethe“built-in”versionofInnoDB.Randomread-aheadwasreintroducedinMySQL5.1.59and5.5.16andhigheralongwiththeinnodb_random_read_aheadconfigurationoption,whichisdisabledbydefault.innodb_read_ahead_thresholdControlsthesensitivityoflinearread-aheadthatInnoDBusestoprefetchpagesintothebufferpool.IfInnoDBreadsatleastinnodb_read_ahead_thresholdpagessequentiallyfromanextent(64pages),itinitiatesanasynchronousreadfortheentirefollowingextent.Thepermissiblerangeofvaluesis0to64.AsofMySQL5.6.1,avalueof0disablesread-ahead.Priorto5.6.1,avalueof0wouldtriggeraread-aheaduponreadingtheboundarypageofa64pageextent.Forthedefaultof56,InnoDBmustreadatleast56pagessequentiallyfromanextenttoinitiateanasynchronousreadforthefollowingextent.innodb_read_io_threadsThenumberofI/OthreadsforreadoperationsinInnoDB.Thedefaultvalueis4.Itscounterpartforwritethreadsisinnodb_write_io_threads.SeeSection14.6.7,“ConfiguringtheNumberofBackgroundInnoDBI/OThreads”formoreinformation.innodb_replication_delayThereplicationthreaddelay(inms)onaslaveserverifinnodb_thread_concurrencyisreached.innodb_rollback_on_timeoutInMySQL5.6,InnoDBrollsbackonlythelaststatementonatransactiontimeoutbydefault.Ifinnodb_rollback_on_timeoutisspecified,atransactiontimeoutcausesInnoDBtoabortandrollbacktheentiretransaction.innodb_rollback_segmentsDefineshowmanyoftherollbacksegmentsinthesystemtablespaceareusedforInnoDBtransactions.Thissetting,whilestillvalid,isreplacedbyinnodb_undo_logs.innodb_spin_wait_delayThemaximumdelaybetweenpollsforaspinlock.Thelow-levelimplementationofthismechanismvariesdependingonthecombinationofhardwareandoperatingsystem,sothedelaydoesnotcorrespondtoafixedtimeinterval.Thedefaultvalueis6.innodb_stats_methodHowtheservertreatsNULLvalueswhencollectingstatisticsaboutthedistributionofindexvaluesforInnoDBtables.Thisvariablehasthreepossiblevalues,nulls_equal,nulls_unequal,andnulls_ignored.Fornulls_equal,allNULLindexvaluesareconsideredequalandformasinglevaluegroupthathasasizeequaltothenumberofNULLvalues.Fornulls_unequal,NULLvaluesareconsideredunequal,andeachNULLformsadistinctvaluegroupofsize1.Fornulls_ignored,NULLvaluesareignored.innodb_stats_on_metadataWhenthisvariableisenabled,InnoDBupdatesstatisticswhenmetadatastatementssuchasSHOWTABLESTATUSorSHOWINDEXarerun,orwhenaccessingtheINFORMATION_SCHEMA.TABLESorINFORMATION_SCHEMA.STATISTICStables.(TheseupdatesaresimilartowhathappensforANALYZETABLE.)Whendisabled,InnoDBdoesnotupdatestatisticsduringtheseoperations.Leavingthissettingdisabledcanimproveaccessspeedforschemasthathavealargenumberoftablesorindexes.ItcanalsoimprovethestabilityofexecutionplansforqueriesthatinvolveInnoDBtables.Tochangethesetting,issuethestatementSETGLOBALinnodb_stats_on_metadata=mode,wheremodeiseitherONorOFF(or1or0).ChangingthissettingrequirestheSUPERprivilegeandimmediatelyaffectstheoperationofallconnections.innodb_stats_sample_pagesDeprecated,useinnodb_stats_transient_sample_pagesinstead.innodb_strict_modeWheninnodb_strict_modeisON,InnoDBreturnserrorsratherthanwarningsforcertainconditions.ThedefaultvalueisOFF.StrictmodehelpsguardagainstignoredtyposandsyntaxerrorsinSQL,orotherunintendedconsequencesofvariouscombinationsofoperationalmodesandSQLstatements.Wheninnodb_strict_modeisON,InnoDBraiseserrorconditionsincertaincases,ratherthanissuingawarningandprocessingthespecifiedstatement(perhapswithunintendedbehavior).Thisisanalogoustosql_modeinMySQL,whichcontrolswhatSQLsyntaxMySQLaccepts,anddetermineswhetheritsilentlyignoreserrors,orvalidatesinputsyntaxanddatavalues.Theinnodb_strict_modesettingaffectsthehandlingofsyntaxerrorsforCREATETABLE,ALTERTABLEandCREATEINDEXstatements.innodb_strict_modealsoenablesarecordsizecheck,sothatanINSERTorUPDATEneverfailsduetotherecordbeingtoolargefortheselectedpagesize.Oraclerecommendsenablinginnodb_strict_modewhenusingROW_FORMATandKEY_BLOCK_SIZEclausesonCREATETABLE,ALTERTABLE,andCREATEINDEXstatements.Wheninnodb_strict_modeisOFF,InnoDBignoresconflictingclausesandcreatesthetableorindex,withonlyawarninginthemessagelog.Theresultingtablemighthavedifferentbehaviorthanyouintended,suchashavingnocompressionwhenyoutriedtocreateacompressedtable.Wheninnodb_strict_modeisON,suchproblemsgenerateanimmediateerrorandthetableorindexisnotcreated,avoidingatroubleshootingsessionlater.Youcanturninnodb_strict_modeONorOFFonthecommandlinewhenyoustartmysqld,formy.ini.Youcanalsoenableordisableinnodb_strict_modeatruntimewiththestatementSET[GLOBAL|SESSION]innodb_strict_mode=mode,wheremodeiseitherONorOFF.ChangingtheGLOBALsettingrequirestheSUPERprivilegeandaffectstheoperationofallclientsthatsubsequentlyconnect.AnyclientcanchangetheSESSIONsettingforinnodb_strict_mode,andthesettingaffectsonlythatclient.innodb_support_xa當(dāng)被設(shè)置為ON或者1(默認(rèn)地),這個(gè)變量允許InnoDB支持在XA事務(wù)中的雙向提交。允許innodb_support_xa導(dǎo)致一個(gè)額外的對(duì)事務(wù)準(zhǔn)備的磁盤(pán)刷新。如果你對(duì)使用XA并不關(guān)心,你可以通過(guò)設(shè)置這個(gè)選項(xiàng)為OFF或0來(lái)禁止這個(gè)變量,以減少磁盤(pán)刷新的次數(shù)并獲得更好的InnoDB性能。innodb_sync_spin_loopsThenumberoftimesathreadwaitsforanInnoDBmutextobefreedbeforethethreadissuspended.Thedefaultvalueis30.innodb_table_locksInnoDB重視LOCKTABLES,直到所有其它線(xiàn)程已經(jīng)釋放他們所有對(duì)表的鎖定,MySQL才從LOCKTABLE..WRITE返回。默認(rèn)值是1,這

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論