• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • MySQL性能優化全攻略(一)

    發表于:2007-07-02來源:作者:點擊數: 標簽:
    導讀 數據庫 性能 優化涉及到系統硬件和軟件的方方面面,本文討論的主要是編譯和配置優化、 服務器 參數調整、如何選用合適的表類型,以及如何用數據庫內建的命令輔助分析和優化性能,特別是如何用E XP LAIN輔助優化查詢的性能。 原文出處: 許多新手往往把

    導讀

       數據庫性能優化涉及到系統硬件和軟件的方方面面,本文討論的主要是編譯和配置優化、服務器參數調整、如何選用合適的表類型,以及如何用數據庫內建的命令輔助分析和優化性能,特別是如何用EXPLAIN輔助優化查詢的性能。 原文出處:

       許多新手往往把重新編譯源代碼看成是一種無可避免的災禍,其實編譯源代碼還能對程序的最終性能起到顯著的影響。編譯過程可以用不同流水線上裝配同樣型號的汽車比擬:第一條流水線由素質較低的工人操作,裝配程序未能盡善盡美,零件裝配誤差較大;第二條流水線由高素質的技術工人操作,汽車裝配程序合理,且利用最好的工具保證產品的高質量。雖然兩條流水線上裝配出來的汽車外觀一模一樣,但兩種汽車的性能表現卻可能大不相同。對于編譯器來說情況也完全相似,有些編譯器裝配出來的程序要比其他編譯器的更好。

       編譯時考慮所有可用的選項也是極其重要的。很可能某些編譯器的默認選項值不能符合要求,或者,為了滿足應用的特定需求,我們需要指定一些特殊的編譯選項。正如MySQL文檔所指出的,只要采用了更好的編譯器或者使用更合理的編譯選項,應用性能的提高程度可以達到10-30%。

       既然如此,編譯時具體應該注意哪些問題才能讓MySQL數據庫運行得更快呢?

       ▲ 使用pgcc編譯器

       如果系統使用的是奔騰處理器,那么pgcc(Pentium GCC)正是為這些系統下運行的程序提供的專用編譯器。pgcc是gcc編譯器()的奔騰優化版,用pgcc編譯MySQL代碼可以讓整體性能提高10%以上!關于pgcc的更多信息,請參見。當然,如果系統使用的不是奔騰處理器,采用這種方法提高MySQL的運行速度就不合適了,因為正如其名字所示,pgcc是專門為奔騰系統提供的。

       ▲ 把mysqld編譯成靜態模式

       以不帶共享庫的形式編譯mysqld同樣可以提高性能。在配置行加入下面這個選項可以將mysqld編譯成靜態模式:


    % >./configure -with-mysqld-ldflags=-all-static [--其他配置選項]

     


       ▲ 配置示例

       下面的配置命令經常用于提高MySQL的性能:


    % >CFLAGS="-O6 -mpentiumpro -fomit-frame-pointer" CXX=gcc CXXFLAGS="-O6
    -mpentiumpro -fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti"
    ./configure --prefix=/usr/local --enable-assembler --with-mysqld-ldflags=-all-static
    --disable-shared

     


       詳細解釋每個gcc選項的作用已經超出了本文的范圍,請訪問gcc的說明文檔了解這些信息()。注意不要拘泥于這個例子,請在命令行執行man gcc仔細了解每一個gcc選項的含義。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>