要從標準原始碼發行版本安裝 MySQL
驗證您的系統是否符合 第 2.8.2 節「原始碼安裝的先決條件」中列出的工具需求。
使用 第 2.1.3 節「如何取得 MySQL」中的指示取得發行檔案。
使用本節中的指示組態、建置和安裝發行版本。
使用 第 2.9 節「安裝後設定與測試」中的指示執行安裝後程序。
MySQL 使用 CMake 作為所有平台上的建置框架。此處提供的指示應可讓您產生可用的安裝。如需使用 CMake 建置 MySQL 的其他資訊,請參閱 如何使用 CMake 建置 MySQL 伺服器。
如果您從原始碼 RPM 開始,請使用以下命令建立您可以安裝的二進位 RPM。如果您沒有 rpmbuild,請改用 rpm。
$> rpmbuild --rebuild --clean MySQL-VERSION.src.rpm
結果會是一個或多個二進位 RPM 套件,您可以按照 第 2.5.4 節「在 Linux 上使用 Oracle 的 RPM 套件安裝 MySQL」中的指示安裝。
從壓縮的 tar 檔案或 Zip 封存檔原始碼發行版本安裝的順序,與從通用二進位發行版本安裝的過程類似 (請參閱 第 2.2 節「在 Unix/Linux 上使用通用二進位檔安裝 MySQL」),不同之處在於,它適用於所有平台,並且包括組態和編譯發行版本的步驟。例如,在 Unix 上使用壓縮的 tar 檔案原始碼發行版本,基本安裝命令順序如下
# Preconfiguration setup
$> groupadd mysql
$> useradd -r -g mysql -s /bin/false mysql
# Beginning of source-build specific instructions
$> tar zxvf mysql-VERSION.tar.gz
$> cd mysql-VERSION
$> mkdir bld
$> cd bld
$> cmake ..
$> make
$> make install
# End of source-build specific instructions
# Postinstallation setup
$> cd /usr/local/mysql
$> mkdir mysql-files
$> chown mysql:mysql mysql-files
$> chmod 750 mysql-files
$> bin/mysqld --initialize --user=mysql
$> bin/mysqld_safe --user=mysql &
# Next command is optional
$> cp support-files/mysql.server /etc/init.d/mysql.server
以下顯示了更詳細的原始碼建置特定指示。
此處顯示的程序不會為 MySQL 帳戶設定任何密碼。依照此程序操作後,請繼續執行 第 2.9 節「安裝後設定與測試」,以進行安裝後設定和測試。
在 Unix 上,設定擁有資料庫目錄的 mysql
使用者,該使用者應執行和執行 MySQL 伺服器,以及此使用者所屬的群組。如需詳細資訊,請參閱 建立 mysql 使用者和群組。然後以 mysql
使用者的身分執行以下步驟,除非另有說明。
選取您要解壓縮發行版本的目錄,並將位置變更到其中。
使用 第 2.1.3 節「如何取得 MySQL」中的指示取得發行檔案。
將發行版本解壓縮到目前目錄
若要解壓縮壓縮的 tar 檔案,如果 tar 具有
z
選項支援,則可以解壓縮和解壓縮發行版本$> tar zxvf mysql-VERSION.tar.gz
如果您的 tar 沒有
z
選項支援,請使用 gunzip 解壓縮發行版本,並使用 tar 解壓縮$> gunzip < mysql-VERSION.tar.gz | tar xvf -
或者,CMake 可以解壓縮和解壓縮發行版本
$> cmake -E tar zxvf mysql-VERSION.tar.gz
若要解壓縮 Zip 封存檔,請使用 WinZip 或其他可以讀取
.zip
檔案的工具。
解壓縮發行檔案會建立一個名為 mysql-
的目錄。VERSION
將位置變更到已解壓縮發行版本的頂層目錄
$> cd mysql-VERSION
在原始碼樹狀目錄外部建置以保持樹狀目錄的整潔。如果頂層原始碼目錄在您目前的工作目錄下名為 mysql-src
,您可以在同層級的名為 build
的目錄中建置。建立目錄並前往該處
$> mkdir bld
$> cd bld
組態建置目錄。最小組態命令不包含任何覆寫組態預設值的選項
$> cmake ../mysql-src
建置目錄不必位於原始碼樹狀目錄外部。例如,您可以在頂層原始碼樹狀目錄下的名為 build
的目錄中建置。若要執行此動作,請從 mysql-src
作為您目前的工作目錄開始,建立目錄 build
,然後前往該處
$> mkdir build
$> cd build
組態建置目錄。最小組態命令不包含任何覆寫組態預設值的選項
$> cmake ..
如果您在同一層級有多個原始碼樹狀目錄 (例如,若要建置多個版本的 MySQL),則第二種策略可能比較有利。第一種策略會將所有建置目錄放在同一層級,這會要求您為每個目錄選擇唯一的名稱。使用第二種策略,您可以在每個原始碼樹狀目錄內使用相同的建置目錄名稱。以下指示假設使用第二種策略。
在 Windows 上,指定開發環境。例如,以下命令分別為 32 位元或 64 位元的建置配置 MySQL
$> cmake .. -G "Visual Studio 12 2013"
$> cmake .. -G "Visual Studio 12 2013 Win64"
在 macOS 上,使用 Xcode IDE
$> cmake .. -G Xcode
當您執行 Cmake 時,您可能會想要在命令列中加入選項。以下是一些範例
-DBUILD_CONFIG=mysql_release
:使用與 Oracle 用於產生官方 MySQL 發行版本的二進位發行版本相同的建置選項來設定來源。-DCMAKE_INSTALL_PREFIX=
:設定發行版本以安裝在特定位置下。dir_name
-DCPACK_MONOLITHIC_INSTALL=1
:使 make package 產生單一安裝檔案,而不是多個檔案。-DWITH_DEBUG=1
:建置具有除錯支援的發行版本。
如需更完整的選項列表,請參閱第 2.8.7 節,「MySQL 來源配置選項」。
若要列出配置選項,請使用下列其中一個命令
$> cmake .. -L # overview
$> cmake .. -LH # overview with help text
$> cmake .. -LAH # all params with help text
$> ccmake .. # interactive display
如果 CMake 失敗,您可能需要使用不同的選項再次執行它來重新配置。如果您重新配置,請注意以下事項
如果 CMake 在先前已執行之後執行,它可能會使用先前呼叫期間收集的資訊。此資訊會儲存在
CMakeCache.txt
中。當 CMake 啟動時,它會尋找該檔案,如果該檔案存在則會讀取其內容,並假設資訊仍然正確。當您重新配置時,此假設是無效的。每次執行 CMake 時,您都必須再次執行 make 來重新編譯。但是,您可能需要先移除先前建置的舊目標檔案,因為它們是使用不同的配置選項編譯的。
為了防止使用舊的目標檔案或配置資訊,請在重新執行 CMake 之前,在 Unix 上的建置目錄中執行這些命令
$> make clean
$> rm CMakeCache.txt
或者,在 Windows 上
$> devenv MySQL.sln /clean
$> del CMakeCache.txt
在 MySQL Community Slack 上提問之前,請檢查 CMakeFiles
目錄中的檔案,以取得關於失敗的有用資訊。若要提出錯誤報告,請依照第 1.6 節,「如何回報錯誤或問題」中的指示進行。
在 Unix 上
$> make
$> make VERBOSE=1
第二個命令會將 VERBOSE
設定為顯示每個已編譯來源的命令。
在您使用 GNU make 且已安裝為 gmake 的系統上,請改用 gmake。
在 Windows 上
$> devenv MySQL.sln /build RelWithDebInfo
如果您已進入編譯階段,但發行版本無法建置,請參閱第 2.8.8 節,「處理編譯 MySQL 的問題」以取得協助。如果這無法解決問題,請使用第 1.6 節,「如何回報錯誤或問題」中提供的指示,將其輸入我們的錯誤資料庫中。如果您已安裝所需工具的最新版本,且它們在嘗試處理我們的配置檔案時當機,也請回報。但是,如果您收到所需工具的 command not found
錯誤或類似問題,請勿回報。相反地,請確保已安裝所有所需工具,並且您的 PATH
變數已正確設定,以便您的 Shell 可以找到它們。
在 Unix 上
$> make install
這會將檔案安裝在已設定的安裝目錄下(預設為 /usr/local/mysql
)。您可能需要以 root
身分執行此命令。
若要安裝在特定目錄中,請將 DESTDIR
參數新增至命令列
$> make install DESTDIR="/opt/mysql"
或者,產生您可以安裝在任何位置的安裝套件檔案
$> make package
此操作會產生一個或多個 .tar.gz
檔案,可以像通用二進位發行套件一樣安裝。請參閱第 2.2 節,「使用通用二進位在 Unix/Linux 上安裝 MySQL」。如果您使用 -DCPACK_MONOLITHIC_INSTALL=1
執行 CMake,則此操作會產生單一檔案。否則,它會產生多個檔案。
在 Windows 上,產生資料目錄,然後建立 .zip
封存安裝套件
$> devenv MySQL.sln /build RelWithDebInfo /project initial_database
$> devenv MySQL.sln /build RelWithDebInfo /project package
您可以將產生的 .zip
封存安裝在任何位置。請參閱第 2.3.3 節,「設定:手動」。
安裝程序的剩餘部分包括設定配置檔案、建立核心資料庫,以及啟動 MySQL 伺服器。如需指示,請參閱第 2.9 節,「安裝後設定和測試」。
MySQL 授權資料表中所列的帳戶最初沒有密碼。啟動伺服器後,您應該使用第 2.9 節,「安裝後設定和測試」中的指示為它們設定密碼。