小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

IT培訓(xùn):優(yōu)化MYSQL服務(wù)器

 昵稱31500 2007-08-15

IT培訓(xùn):優(yōu)化MYSQL服務(wù)器

http://www./ArticleView/2006-12-28/Article_View_870.Htm

     MySQL服務(wù)器有幾個(gè)影響其操作的參數(shù)(變量)。如果缺省的參數(shù)值不合適,可以將其修改為對(duì)服務(wù)器運(yùn)行環(huán)境更合適的值。例如,如果您有大量的內(nèi)存,可以告訴服務(wù)為磁盤和索引操作使用較大的緩沖區(qū)。這將使內(nèi)存持有更多的信息并減少了必須進(jìn)行的磁盤訪問(wèn)的數(shù)量。如果是一般的系統(tǒng),可以告訴服務(wù)器使用較小的緩沖區(qū),以防止它擾亂系統(tǒng)資源損害其他的進(jìn)程。
      系統(tǒng)變量的當(dāng)前值可以通過(guò)執(zhí)行mysqladmin variables 命令來(lái)檢查。變量可利用- - set - variable var_name = value 選項(xiàng)在命令行設(shè)置( -ovar_name = value 是等價(jià)的)。如果要想設(shè)置幾個(gè)變量,可使用多個(gè)--set-variable 選項(xiàng),還可以使用下列語(yǔ)法在一個(gè)選項(xiàng)文件的[mysqld] 組中設(shè)置變量:
      set -variale=var_name=value
      在附錄E的mysql程序的條款下給出了服務(wù)器變量的全部清單。有關(guān)性能優(yōu)化比較常用的變量已在以下列表中給出。您還可以在MySQL參考手冊(cè)的“從MySQL中獲得最高性能”一章中找到該主題的附加討論。
      back_log 引入的客戶機(jī)連接請(qǐng)求的數(shù)量,這些請(qǐng)求在從當(dāng)前客戶機(jī)中處理時(shí)排隊(duì)。如果您有一個(gè)很忙的站點(diǎn),可以增加該變量的值。
      delayed_queue_size 此變量控制被排隊(duì)的INSERT DELAYED 語(yǔ)句中的行數(shù)。如果該隊(duì)列已滿,則更多的INSERT DELAYED 將堵塞,直到隊(duì)列有空間為止,這樣可防止發(fā)布那些語(yǔ)句的客戶機(jī)繼續(xù)進(jìn)行操作。如果您有許多執(zhí)行這種INSERT 的客戶機(jī),且發(fā)現(xiàn)它們正在堵塞,那么應(yīng)增加該變量,使更多的客戶機(jī)更快地進(jìn)行工作( INSERT D E L AYED 在4 . 5節(jié)“調(diào)度與鎖定問(wèn)題”中討論)
      flush_time 如果系統(tǒng)有問(wèn)題并且經(jīng)常鎖死或重新引導(dǎo),應(yīng)將該變量設(shè)置為非零值,這將導(dǎo)致服務(wù)器按flush_time 秒來(lái)刷新表的高速緩存。用這種方法來(lái)寫(xiě)出對(duì)表的修改將降低性能,但可減少表訛誤或數(shù)據(jù)丟失的機(jī)會(huì)。
     在Windows 中,可以在命令行上用--flush 選項(xiàng)啟動(dòng)服務(wù)器,以迫使表的修改在每次更新后被刷新。
      key _ buffer_size 用于存放索引塊緩沖區(qū)的大小。如果增加該變量值,將加快創(chuàng)建和修改索引操作的時(shí)間。值越大MySQL就越有可能在內(nèi)存中查找鍵值,這將減少索引處理所需的磁盤訪問(wèn)次數(shù)。
     在MySQL3.23 以前的版本中,該變量名為key _ buffer。MySQL3.23 及后來(lái)的版本同時(shí)識(shí)別這兩個(gè)名字。
     max_allowed_packet 客戶機(jī)通信所使用的緩沖區(qū)大小的最大值。如果有客戶機(jī)要發(fā)送大量的BLOB 或TEXT 的值,該服務(wù)器變量值可能需要增大。
     客戶機(jī)目前使用大小為24MB 的缺省緩沖區(qū)。如果有使用較小緩沖區(qū)的舊客戶機(jī)。可能需要使該客戶機(jī)的緩沖區(qū)大一些。例如, mysql可以按如下調(diào)用來(lái)指定一個(gè)2 4 MB 信息包的限制值:
    mysql--set-varibale max_allowed_packet=24M
    max_connections 服務(wù)器允許的客戶機(jī)同時(shí)連接的最大數(shù)量。如果服務(wù)器繁忙,可能需要增加該值。例如,如果您的MySQL服務(wù)器被Web 服務(wù)器使用來(lái)處理由DBI 或PHP 腳本產(chǎn)生的查詢,并且還有大量的Web 通信,如果該變量設(shè)置太低的話,則您站點(diǎn)的訪問(wèn)者會(huì)發(fā)現(xiàn)請(qǐng)求被拒絕。
      table_cache 表的高速緩存的大小。增加該值可以使mysqld 保持更多的表,同時(shí)打開(kāi)并減少必須進(jìn)行的文件打開(kāi)和關(guān)閉操作的次數(shù)。
      如果增加了max_connections 或table_cache 值的大小,服務(wù)器將需要大量的文件描述符。這將引起有關(guān)操作系統(tǒng)對(duì)文件描述符總進(jìn)程數(shù)量限定的問(wèn)題,在這種情況下您需要增加該限制值或逐步解決它。由于增加文件描述符數(shù)量的限制值,過(guò)程會(huì)發(fā)生變化,所以您可能會(huì)在一個(gè)運(yùn)行腳本中使用ulimit 命令時(shí)來(lái)這樣做,該腳本可用于啟動(dòng)服務(wù)器,或用于重新配置您的系統(tǒng)。有些系統(tǒng)可以通過(guò)編輯系統(tǒng)描述文件來(lái)簡(jiǎn)單地配置和重新引導(dǎo)。對(duì)于其他一些系統(tǒng),則必須編輯一個(gè)內(nèi)核描述文件并重建該內(nèi)核。如何繼續(xù)進(jìn)行下去,請(qǐng)參考您系統(tǒng)的文檔。
      解決總進(jìn)程文件描述符限制的一個(gè)方法是:將數(shù)據(jù)目錄分離成多個(gè)數(shù)據(jù)目錄并運(yùn)行多個(gè)服務(wù)器。這樣,通過(guò)運(yùn)行多個(gè)服務(wù)器使可用的描述符數(shù)量成倍增長(zhǎng)。但另一方面,其他的復(fù)雜因素可能會(huì)引起問(wèn)題。由于命名了兩個(gè)服務(wù)器,您不能從一個(gè)單個(gè)的服務(wù)器上訪問(wèn)不同數(shù)
據(jù)目錄中的數(shù)據(jù)庫(kù),并且還需要在不同服務(wù)器之間復(fù)制授權(quán)表的權(quán)限,以便用戶需要訪問(wèn)一個(gè)以上的服務(wù)器。
      有兩個(gè)變量是管理員為提高性能時(shí)常增加的,它們是record _ buffer 和sort _ buffer。這些緩沖區(qū)在連接和分類操作中使用,但其值是屬于每個(gè)連接的。也就是說(shuō),每個(gè)客戶機(jī)都獲得屬于自己的緩沖區(qū)。如果使這些變量的值很大,性能可能會(huì)由于昂貴的系統(tǒng)資源的消耗而遭受實(shí)際的損失。如果想要修改這些變量,先執(zhí)行mysqladmin variables 查看一下它們當(dāng)前的值,然后增量調(diào)整其值。這個(gè)操作使您能估計(jì)為減少嚴(yán)重的性能降低所進(jìn)行的修改的效果。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多