最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

一些mysql啟動參數(shù)的說明和優(yōu)化方法

 更新時間:2011年04月26日 18:17:27   作者:  
要求MySQL能有的連接數(shù)量。當(dāng)主要MySQL線程在一個很短時間內(nèi)得到非常多的連接請求,這就起作用,然后主線程花些時間(盡管很短)檢查連接并且啟動一個新線程。
back_log值指出在MySQL暫時停止回答新請求之前的短時間內(nèi)多少個請求可以被存在堆棧中。只有如果期望在一個短時間內(nèi)有很多連接,你需要增加它,換句話說,這值對到來的TCP/IP連接的偵聽隊(duì)列的大小。你的操作系統(tǒng)在這個隊(duì)列大小上有它自己的限制。 Unix listen(2)系統(tǒng)調(diào)用的手冊頁應(yīng)該有更多的細(xì)節(jié)。檢查你的OS文檔找出這個變量的最大值。試圖設(shè)定back_log高于你的操作系統(tǒng)的限制將是無效的。

  connect_timeout

  mysqld服務(wù)器在用Bad handshake(糟糕的握手)應(yīng)答前正在等待一個連接報文的秒數(shù)。

  delayed_insert_timeout

  一個INSERT DELAYED線程應(yīng)該在終止之前等待INSERT語句的時間。

  delayed_insert_limit

  在插入delayed_insert_limit行后,INSERT DELAYED處理器將檢查是否有任何SELECT語句未執(zhí)行。如果這樣,在繼續(xù)前執(zhí)行允許這些語句。

  delayed_queue_size

  應(yīng)該為處理INSERT DELAYED分配多大一個隊(duì)列(以行數(shù))。如果排隊(duì)滿了,任何進(jìn)行INSERT DELAYED的客戶將等待直到隊(duì)列又有空間了。

  flush_time

  如果這被設(shè)置為非零值,那么每flush_time秒所有表將被關(guān)閉(以釋放資源和sync到磁盤)。

  interactive_timeout

  服務(wù)器在關(guān)上它前在一個交互連接上等待行動的秒數(shù)。一個交互的客戶被定義為對mysql_real_connect()使用CLIENT_INTERACTIVE選項(xiàng)的客戶。也可見wait_timeout。

  join_buffer_size

  用于全部聯(lián)結(jié)(join)的緩沖區(qū)大小(不是用索引的聯(lián)結(jié))。緩沖區(qū)對2個表間的每個全部聯(lián)結(jié)分配一次緩沖區(qū),當(dāng)增加索引不可能時,增加該值可得到一個更快的全部聯(lián)結(jié)。(通常得到快速聯(lián)結(jié)的最佳方法是增加索引。)

  key_buffer_size

  索引塊是緩沖的并且被所有的線程共享。key_buffer_size是用于索引塊的緩沖區(qū)大小,增加它可得到更好處理的索引(對所有讀和多重寫),到你能負(fù)擔(dān)得起那樣多。如果你使它太大,系統(tǒng)將開始換頁并且真的變慢了。記住既然MySQL不緩存讀取的數(shù)據(jù),你將必須為OS文件系統(tǒng)緩存留下一些空間。為了在寫入多個行時得到更多的速度,使用LOCK TABLES。見7.24LOCK TABLES/UNLOCK TABLES語法。

  long_query_time

  如果一個查詢所用時間超過它(以秒計(jì)),Slow_queries記數(shù)器將被增加。

  max_allowed_packet

  一個包的最大尺寸。消息緩沖區(qū)被初始化為net_buffer_length字節(jié),但是可在需要時增加到max_allowed_packet個字節(jié)。缺省地,該值太小必能捕捉大的(可能錯誤)包。如果你正在使用大的BLOB列,你必須增加該值。它應(yīng)該象你想要使用的最大BLOB的那么大。

  max_connections

  允許的同時客戶的數(shù)量。增加該值增加mysqld要求的文件描述符的數(shù)量。見下面對文件描述符限制的注釋。見18.2.4 Too many connections錯誤。

  max_connect_errors

  如果有多于該數(shù)量的從一臺主機(jī)中斷的連接,這臺主機(jī)阻止進(jìn)一步的連接。你可用FLUSH HOSTS命令疏通一臺主機(jī)。

  max_delayed_threads

  不要啟動多于的這個數(shù)字的線程來處理INSERT DELAYED語句。如果你試圖在所有INSERT DELAYED線程在用后向一張新表插入數(shù)據(jù),行將被插入,就像DELAYED屬性沒被指定那樣。

  max_join_size

  可能將要讀入多于max_join_size個記錄的聯(lián)結(jié)將返回一個錯誤。如果你的用戶想要執(zhí)行沒有一個WHERE子句、花很長時間并且返回百萬行的聯(lián)結(jié),設(shè)置它。

  max_sort_length

  在排序BLOB或TEXT值時使用的字節(jié)數(shù)(每個值僅頭max_sort_length個字節(jié)被使用;其余的被忽略)。

  max_tmp_tables

  (該選擇目前還不做任何事情)。一個客戶能同時保持打開的臨時表的最大數(shù)量。

  net_buffer_length

  通信緩沖區(qū)在查詢之間被重置到該大小。通常這不應(yīng)該被改變,但是如果你有很少的內(nèi)存,你能將它設(shè)置為查詢期望的大小。(即,客戶發(fā)出的SQL語句期望的長度。如果語句超過這個長度,緩沖區(qū)自動地被擴(kuò)大,直到max_allowed_packet個字節(jié)。)

  record_buffer

  每個進(jìn)行一個順序掃描的線程為其掃描的每張表分配這個大小的一個緩沖區(qū)。如果你做很多順序掃描,你可能想要增加該值。

  sort_buffer

  每個需要進(jìn)行排序的線程分配該大小的一個緩沖區(qū)。增加這值加速ORDER BY或GROUP BY操作。見18.5 MySQL在哪兒存儲臨時文件。

  table_cache

  為所有線程打開表的數(shù)量。增加該值能增加mysqld要求的文件描述符的數(shù)量。MySQL對每個唯一打開的表需要2個文件描述符,見下面對文件描述符限制的注釋。對于表緩存如何工作的信息,見10.2.4 MySQL怎樣打開和關(guān)閉表。

  tmp_table_size

  如果一張臨時表超出該大小,MySQL產(chǎn)生一個The table tbl_name is full形式的錯誤,如果你做很多高級GROUP BY查詢,增加tmp_table_size值。

  thread_stack

  每個線程的棧大小。由crash-me測試檢測到的許多限制依賴于該值。缺省隊(duì)一般的操作是足夠大了。見10.8 使用你自己的基準(zhǔn)。

  wait_timeout

  服務(wù)器在關(guān)閉它之前在一個連接上等待行動的秒數(shù)。也可見interactive_timeout。

  MySQL使用是很具伸縮性的算法,因此你通常能用很少的內(nèi)存運(yùn)行或給MySQL更多的被存以得到更好的性能。

  如果你有很多內(nèi)存和很多表并且有一個中等數(shù)量的客戶,想要最大的性能,你應(yīng)該一些象這樣的東西:

  shell> safe_mysqld -O key_buffer=16M -O table_cache=128 \

  -O sort_buffer=4M -O record_buffer=1M &

  如果你有較少的內(nèi)存和大量的連接,使用這樣一些東西:

  shell> safe_mysqld -O key_buffer=512k -O sort_buffer=100k \

  -O record_buffer=100k &

  或甚至:

  shell> safe_mysqld -O key_buffer=512k -O sort_buffer=16k \

  -O table_cache=32 -O record_buffer=8k -O net_buffer=1K &

  如果有很多連接,“交換問題”可能發(fā)生,除非mysqld已經(jīng)被配置每個連接使用很少的內(nèi)存。當(dāng)然如果你對所有連接有足夠的內(nèi)存,mysqld執(zhí)行得更好。

  注意,如果你改變mysqld的一個選項(xiàng),它實(shí)際上只對服務(wù)器的那個例子保持。

  為了明白一個參數(shù)變化的效果,這樣做:

  shell> mysqld -O key_buffer=32m --help

  保證--help選項(xiàng)是最后一個;否則,命令行上在它之后列出的任何選項(xiàng)的效果將不在反映在輸出中。

  重要的MySQL啟動選項(xiàng)

  back_log 如果需要大量新連接,修改它。

  thread_cache_size 如果需要大量新連接,修改它。

  key_buffer_size 索引頁池,可以設(shè)成很大。

  bdb_cache_size BDB表使用的記錄和鍵嗎高速緩存。

  table_cache 如果有很多的表和并發(fā)連接,修改它。

  delay_key_write 如果需要緩存所有鍵碼寫入,設(shè)置它。

  log_slow_queries 找出需花大量時間的查詢。

  max_heap_table_size 用于GROUP BY

  sort_buffer 用于ORDER BY和GROUP BY

  myisam_sort_buffer_size 用于REPAIR TABLE

  join_buffer_size 在進(jìn)行無鍵嗎的聯(lián)結(jié)時使用。

  MySQL高速緩存(所有線程共享,一次性分配)

  鍵碼緩存:key_buffer_size,默認(rèn)8M。

  表緩存:table_cache,默認(rèn)64。

  線程緩存:thread_cache_size,默認(rèn)0。

  主機(jī)名緩存:可在編譯時修改,默認(rèn)128。

  內(nèi)存映射表:目前僅用于壓縮表。

  注意:MySQL沒有行高速緩存,而讓操作系統(tǒng)處理

  MySQL緩存區(qū)變量(非共享,按需分配)

  sort_buffer:ORDER BY/GROUP BY

  record_buffer:掃描表。

  join_buffer_size:無鍵聯(lián)結(jié)

  myisam_sort_buffer_size:REPAIR TABLE

  net_buffer_length:對于讀SQL語句并緩存結(jié)果。

  tmp_table_size:臨時結(jié)果的HEAP表大小。

相關(guān)文章

  • MySQL數(shù)據(jù)庫觸發(fā)器從小白到精通

    MySQL數(shù)據(jù)庫觸發(fā)器從小白到精通

    觸發(fā)器是SQLserver提供給程序員和數(shù)據(jù)分析員來保證數(shù)據(jù)完整性的一種方法,它是與表事件相關(guān)的特殊的存儲過程,它的執(zhí)行不是由程序調(diào)用,也不是手工啟動,而是由事件來觸發(fā),比如當(dāng)對一個表進(jìn)行操作時就會激活它執(zhí)行。觸發(fā)器經(jīng)常用于加強(qiáng)數(shù)據(jù)的完整性約束和業(yè)務(wù)規(guī)則等
    2022-03-03
  • Mysql中的Datetime和Timestamp比較

    Mysql中的Datetime和Timestamp比較

    這篇文章主要介紹了Mysql中的Datetime和Timestamp比較,本文總結(jié)了它們的相同點(diǎn)和不同點(diǎn)以及時間格式介紹等,需要的朋友可以參考下
    2015-03-03
  • 詳解Windows10下載mysql的教程圖解

    詳解Windows10下載mysql的教程圖解

    本文通過圖文并茂的形式給大家介紹了Windows10下載mysql的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • 詳解MySQL用事件調(diào)度器Event Scheduler創(chuàng)建定時任務(wù)

    詳解MySQL用事件調(diào)度器Event Scheduler創(chuàng)建定時任務(wù)

    事件調(diào)度器(Event Scheduler)是在MySQLv5.1.6中新增的一個功能,它相當(dāng)于一個定時器,可以在指定的時間點(diǎn)執(zhí)行一條SQL語句或一個語句塊,也可以用于在固定間隔重復(fù)執(zhí)行。下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)在MySQL中如何用事件調(diào)度器Event Scheduler創(chuàng)建定時任務(wù)
    2016-08-08
  • MYSQL拒絕訪問報錯not allowed to connect

    MYSQL拒絕訪問報錯not allowed to connect

    MYSQL拒絕訪問報錯not allowed to connect,下面有個可行的方法,可以在其它任何的主機(jī)上以root身份登錄
    2014-07-07
  • 淺析mysql 語句的調(diào)度優(yōu)先級及改變

    淺析mysql 語句的調(diào)度優(yōu)先級及改變

    本篇文章是對mysql語句的調(diào)度優(yōu)先級及改變進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • MySQL數(shù)據(jù)庫INSERT、UPDATE、DELETE以及REPLACE語句的用法詳解

    MySQL數(shù)據(jù)庫INSERT、UPDATE、DELETE以及REPLACE語句的用法詳解

    本篇文章是對MySQL數(shù)據(jù)庫INSERT、UPDATE、DELETE以及REPLACE語句的用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • MySQL游標(biāo)概念與用法詳解

    MySQL游標(biāo)概念與用法詳解

    這篇文章主要介紹了MySQL游標(biāo)概念與用法,簡單描述了mysql游標(biāo)的概念、原理并結(jié)合實(shí)例形式詳細(xì)分析了游標(biāo)的各種常見用法與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-07-07
  • MySQL存儲文本和圖片的方法

    MySQL存儲文本和圖片的方法

    今天小編就為大家分享一篇關(guān)于MySQL存儲文本和圖片的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • 一文掌握MySQL表的創(chuàng)建和約束

    一文掌握MySQL表的創(chuàng)建和約束

    這篇文章主要和大家分享一下數(shù)據(jù)庫的創(chuàng)建和銷毀語法以及詳細(xì)講解MySQL表的創(chuàng)建代碼和約束的使用,文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2022-07-07

最新評論

东山县| 聊城市| 吴川市| 砚山县| 阜康市| 澜沧| 兴山县| 和硕县| 淮北市| 东台市| 从江县| 阳曲县| 望城县| 黄平县| 双桥区| 茶陵县| 罗山县| 陆河县| 乳源| 海阳市| 闻喜县| 禄劝| 曲麻莱县| SHOW| 陆丰市| 赣州市| 平度市| 高州市| 乌兰浩特市| 郴州市| 海城市| 安顺市| 镇坪县| 靖西县| 永和县| 玉树县| 浦北县| 保亭| 临澧县| 中阳县| 岳池县|