注意:如果你想幫助我們測試新代碼,應當閱讀本節。如果你只想在系統上安裝并運行MySQL,應當使用標準發布分發版(二進制或源碼分發版)。
要想獲得我們的最新開發源碼樹,應使用說明:
1. 從http://www.bitmover.com/bk-client.shar下載BitKeeper免費客戶端。
2. 在Unix上安裝免費客戶端:
3. shell> sh bk-client.shar
4. shell> cd bk_client-1.1
5. shell> make all
6. shell> PATH=$PWD:$PATH
在Windows上的安裝方法:
· 從http://cygwin.com下載并安裝Cygwin。
· 確保gcc和make已經安裝到Cygwin。可以用which gcc和 which make命令進行測試。如果任何一個沒有安裝,運行 Cygwin安裝包管理器,選擇gcc、make并安裝。
· 在Cygwin中,運行:
· shell> sh bk-client.shar
· shell> cd bk_client-1.1
然后編輯Makefile并將行s $(CC) $(CFLAGS) -o sfio -lz sfio.c更改為:
$(CC) $(CFLAGS) -o sfio sfio.c -lz
現在運行make命令并設置路徑:
shell> make all
shell> PATH=$PWD:$PATH
7. 安裝BitKeeper免費客戶端后,首先進入工作目錄,然后使用以下命令在本地復制MySQL 5.1:
8. shell> sfioball -r+ bk://mysql.bkbits.net/mysql-5.1 mysql-5.1
一般情況,你不需要自己構建文檔,因為我們已經在http://dev.mysql.com/doc/提供了許多格式。我們每天更新你可以下載的格式(HTML、PDF等),因此你沒有必要從MySQLdoc樹中的DocBook XML基本格式來創建。如果你想要復制文檔庫,使用下面的命令:
shell> sfioball -r+ bk://mysql.bkbits.net/mysqldoc mysqldoc
在前面的例子中,在當前目錄的MySQL-5.1/子目錄中設置源碼樹。
如果你位于防火墻后面,只能初始化HTTP連接,還可以通過HTTP使用BitKeeper。
如果需要使用代理服務器,設置環境變量http_proxy指向代理:
shell> export http_proxy="http://your.proxy.server:8080/"
當復制庫時用http://替換bk://。例如:
shell> sfioball -r+ http://mysql.bkbits.net/mysql-5.1 mysql-5.1
下載源碼樹可能需要一段時間,取決于連接速度。請耐心等待。
9. 要想更新本地MySQL 5.1庫復制,使用命令:
10. shell> update bk://mysql.bkbits.net/mysql-5.1
11.你需要GNU make、autoconf 2.58 (或更新版)、automake 1.8、libtool 1.5和m4來運行后面的命令。盡管許多操作系統安裝了make,很可能編譯失敗,出現許多奇怪的缺陷消息。因此,強烈建議你使用GNU make(有時名為gmake)。
幸運的是,大量的操作系統預裝了GNU工具鏈或提供了可安裝軟件包。你可以隨時從下面的地址下載:
· http://www.gnu.org/software/autoconf/
· http://www.gnu.org/software/automake/
· http://www.gnu.org/software/libtool/
· http://www.gnu.org/software/m4/
· http://www.gnu.org/software/make/
要想配置MySQL 5.1,你還需要GNU bison 1.75或更新版。舊版本的bison會報告錯誤:
sql_yacc.yy:#####: fatal error: maximum table size (32767) exceeded
注釋:實際上并沒有超出最大表空間;這是由舊版本的bison的缺陷造成的該問題。
下面的例子顯示了配置源碼樹需要的典型命令。第一個cd命令將位置改為樹的頂級目錄;用相應目錄名替換MySQL-5.1。
shell> cd mysql-5.1
shell> bk -r edit
shell> aclocal; autoheader
shell> libtoolize --automake --force
shell> automake --force --add-missing; autoconf
shell> (cd innobase; aclocal; autoheader; autoconf; automake)
shell> (cd bdb/dist; sh s_all)
shell> ./configure # Add your favorite options here
shell> make
對于下面的命令,可以使用BUILD/autorun.sh作為快捷方式:
shell> aclocal; autoheader
shell> libtoolize --automake --force
shell> automake --force --add-missing; autoconf
shell> (cd innobase; aclocal; autoheader; autoconf; automake)
shell> (cd bdb/dist; sh s_all)
使用將目錄改為innobase和bdb/dist目錄的命令行來配置InnoDB和 Berkeley DB (BDB)儲存引擎。如果你不需要InnoDB或BDB支持,你可以省略這些命令行。
如果在該階段你遇到一些奇怪的錯誤,請確認你是否已經安裝了 libtool。
標準配置腳本位于BUILD/子目錄。你會發現使用BUILD/compile-pentium-debug腳本比使用前面的外殼命令要方便得多。要想在不同的架構上編譯,可以修改腳本,即去掉Pentium相關標志。
12.構建完成后,運行make install。在產品機器上運行時應注意;該命令會覆蓋你正使用的版本。如果你安裝了另一個MySQL,我們建議你使用 與你的產品服務器上不同的--prefix、--with-tcp-port和--unix-socket-path選項值來運行./configure。
13.強制運行新安裝和嘗試會破壞新功能。應先運行make test。請參見27.1.2節,“MySQL測試套件”。
14.如果你已經進入make階段而分發版不編譯,請報告給我們的http://bugs.mysql.com/中的缺陷數據庫。如果你已經安裝了GNU工具的最新版本,如果視圖處理配置文件時出錯,請報告給我們。但是,如果你執行aclocal并且遇到command not found error或類似問題,不要報告給我們。而是應確保安裝了所有必要的工具,并且PATH變量設置正確,保證外殼命令可以找到它們。
15.復制完庫(sfioball)獲得源碼樹后,你應當定期更新庫(update)。
16.你可以檢查樹的更改史,瀏覽源碼樹中的BK/ ChangeLog文件并查看ChangeSet描述找到所有不同點。要想檢查特殊的更改集,必須使用sfioball命令提取源碼樹的兩次不同的修訂,然后使用外部diff命令來比較。如果你看到有疑問的奇怪的不同之處或代碼,一定要向MySQL internals郵件列表發送郵件。請參見1.7.1.1節,“The MySQL郵件列表”。并且,如果你有更好的思想,請向上述地址發送郵件。
17.BitKeeper免費客戶端預裝了源碼。免費客戶端可用的唯一文檔是源碼本身。
你還可以在線瀏覽更改集、注釋和源碼。要想瀏覽MySQL 5.1的相關信息,請到http://mysql.bkbits.net:8080/mysql-5.1。