導航:首頁 > 源碼編譯 > mysql系統編譯

mysql系統編譯

發布時間:2024-10-16 10:49:08

⑴ MySQL代碼如何在Windows環境下編譯_MySQL



寫這篇文章的目的只是告訴朋友們如何編譯MySQL代碼,或許有些人覺得從Windows平台編譯MySQL的代碼有些復雜,其實不然。如果您對本文中所提到的知識有任何疑問可以透過CSDN的MySQL板或者MySQL@CHINA支援論壇尋求幫助。這篇文章中所提到的東西沒有任何的創新性,只是對MySQL已有文檔的總結。

一、為什麼要編譯代碼

我不知道閱讀這篇文章的朋友你是否會注意MySQL手冊。MySQL在線手冊近期呈現一種“超越”趨勢,手冊中所描述的內容很大部分都是開發版本中才能找到的,我希望自己在閱讀的同時獲得試驗的機會。同時,我也和其他朋友一樣痛恨軟體中存在各種BUG,所以我要自己編譯代碼。當然,最開始我的初衷是希望藉助Intel C++重新編譯MySQL的代碼獲取更好的性能。

二、編譯代碼要如何准備

這一部分包含下列要點,請務必注意。

■ 編譯器

■ Cygwin

■ 內存

■ 耐心

編譯器,編譯MySQL代碼可以使用Cygwin下的GCC以及VC6.0,VC7.1。如果您使用Intel C++的話,我建議您配合VC6.0使用。不推薦使用VC 7.0的原因是其本身所存在的BUG(已經修復,但不公開提供),如果不裝補丁的話那麼會造成錯誤(關於inline優化可以暫時解決)。VC6.0請安裝SP4或SP5以及對應的處理器支持補丁包。

Cygwin,MySQL的代碼絕大部分是在linux編寫,所以很多實用工具以及配置腳本都是*nix風格,因此我們需要藉助Cygwin這一 Unix 模擬環境。安裝時請選擇上 autoconf automake gnu make libtool bison perl。另外一點,MySQL的開發使用bk進行管理,而bk的客戶端也需要藉助cygwin運行。如果只想編譯官方發布的Windows代碼,那麼可以不去關心這些。

內存,編譯MySQL代碼非常消耗時間,至少我是這么覺得。我建議有一個足夠大內存的機器,否則會讓你有種生不如死的感覺。

耐心,第一次編譯MySQL尤其是開發中的代碼難免會遇到各種各樣的麻煩,嘗試去克服它們。沒有人第一次就應該成功,假設連這些小問題都無法解決那麼談何閱讀代碼?所以,多少給自己點信心,也多少有些耐心。

三、獲取資源

除了編譯器、cygwin之外我們還需要准備bk的客戶端,可以下載回來。當准備妥當工具後我們訪問 mysql.bkbits.net ,在這里我們可以看到一個表格。這里的表格每一項目都對應著一個mysql的項目,我們關心的是名為 mysql-4.1的項目,這是目前的主要工作重點 MySQL 4.1.x 版本的開發樹。

獲取代碼:

shell> bk clone bk://mysql.bkbits.net/mysql-4.1 mysql-4.1

更新代碼:

shell> bk pull bk://mysql.bkbits.net/mysql-4.1 mysql-4.1

通過上邊兩個命令,我們就可以得到並隨時同步開發中的MySQL4.1.x代碼,第一次下載的話整個過程很慢大約有100多M的東西需要下載,然後還要解壓縮然後合成代碼。mysql.bkbits.net 列出的其他項目分別是:



我們都可以使用同樣的方式獲取並隨時同步代碼。

四、產生Windows代碼

默認下載回來的代碼並不適合直接就用,把代碼到另外的目錄,然後使用BUILD目錄下的實用工具 compile-pentium-max 配置代碼,配置完成後使用 scripts 目錄下的實用工具make_win_src_distribution 產生一個適合Windows使用的代碼,這種方式得到的代碼如同官方下載所提供的代碼,最終成品是一個tar打包。執行這些實用工具,也就是shell 腳本需要在代碼樹的頂級目錄。

五、編譯代碼

當完成了上述工作之後編譯代碼應該是最為輕松的,直接用VC 6.0或者VC.NET 2003打開工程文件編譯就可以了。整個過程中並不需要其他的類庫進行輔助,也什麼難點。

最後,祝福各位好運。另外也是最重要的。通過本文所述方式獲得的MySQL代碼遵循GPL協議,關於GPL的詳細信息請自行查閱。


⑵ 在linux安裝MySQL時採用源碼編譯安裝,但是如何讓MySQL的編譯時間縮短呢

可以試試在使用make && make install 時添加-j參數,不限制內核進行編譯安裝。或者-j 後加內核數 。例如 make -j 4 && make install -j 4
優點:速度快會相對提高很多
缺點:消耗大量CPU,內存資源。
我做過一個測試,如果不限定內核 (16核 80GB內存 )的伺服器編譯安裝mysql 5.0.7 安裝時長大致在10分鍾左右,但是測試時伺服器CPU跑滿100% ,內存消耗至少32GB。直接使用 make && make install 安裝耗時45分鍾,內存4GB ,CPU 10%左右。

閱讀全文

與mysql系統編譯相關的資料

熱點內容
點愛APP怎麼下載不了了 瀏覽:105
pr視頻生成文件夾能刪除嗎 瀏覽:715
香港雲伺服器1m帶寬嗎 瀏覽:366
如何打開老手機內存卡加密 瀏覽:850
單片機8腳5v 瀏覽:58
防止反編譯技術 瀏覽:489
網關的加密方式用哪個 瀏覽:232
加密便簽在哪裡找小米 瀏覽:527
對數函數的預演算法則 瀏覽:893
會計基礎教材pdf 瀏覽:408
怎麼用蘋果平板登安卓賬號王者 瀏覽:379
蘋果怎麼下rosi的app 瀏覽:488
單片機usb模塊作用 瀏覽:936
拿破崙傳pdf 瀏覽:885
Java7程序設計 瀏覽:402
黑馬程序員百度雲 瀏覽:559
java驗證碼識別演算法 瀏覽:759
單片機共陽極數碼管0到9重復 瀏覽:940
pdf如何圖片格式 瀏覽:383
龍虎榜接收數據器源碼 瀏覽:648