使用標準源分發安裝MySQL
要從標準源代碼分發安裝MySQL:
驗證您的系統是否滿足“從源安裝MySQL”中列出的工具要求。
使用“如何獲取MySQL”中的說明獲取分發文件 。
使用本節中的說明配置,構建和安裝分發。
使用“安裝後設置和測試”中的說明執行安裝後過程 。
在MySQL 8.0中,CMake用作所有平台上的構建框架。
從源代碼構建MySQL使您可以自定義構建參數,編譯器優化和安裝位置。有關運行MySQL的系統列表,請參閱https://www.mysql.com/support/supportedplatforms/database.html。
警告
使用非標準選項構建MySQL可能會導致功能,性能或安全性降低。
源安裝方法
從源代碼安裝MySQL有兩種方法:
使用標準的MySQL源代碼分發。要獲得標準分發,請參見第2.1.2節“如何獲取MySQL”。有關從標準分發構建的說明,請參見 第2.9.2節“使用標準源分發安裝MySQL”。
標準發行版可用作壓縮tar文件,Zip 壓縮 文件或RPM包。分發文件有名字的形式 , 或者 ,在那裡是一個數字一樣 。源分發的文件名可以與預編譯的二進制分發的文件名區別開來,因為源分發名稱是通用的並且不包括平台名稱,而二進制分發名稱包括指示分發所針對的系統類型的平台名稱(例如, 或)。 mysql-VERSION.tar.gzmysql-VERSION.zipmysql-VERSION.rpmVERSION8.0.15pc-linux-i686winx64
使用MySQL開發源。有關從其中一個開發源構建的信息,請參見 第2.9.3節“使用開發源安裝MySQL”。
源安裝系統要求
從源代碼安裝MySQL需要幾個開發工具。無論您使用標準源代碼分發還是開發源代碼樹,都需要其中一些工具。其他工具要求取決於您使用的安裝方法。
要從源安裝MySQL,無論安裝方法如何,都必須滿足以下系統要求:
CMake,用作所有平台上的構建框架。CMake可以從 http://www.cmake.org下載。
一個很好的製作程序。雖然某些平台有自己的make實現,但強烈建議您使用GNU make 3.75或更高版本。它可能已作為gmake在您的系統上提供 。GNU make可從http://www.gnu.org/software/make/獲得。
MySQL 8.0源代碼允許使用C ++ 14特性。要在所有支持的平台上提供良好的C ++ 14支持,以下最低編譯器版本適用:
MySQL C API需要C ++或C99編譯器才能編譯。
構建MySQL需要Boost C ++庫(但不能使用它)。MySQL編譯需要特定的Boost版本。通常,這是當前的Boost版本,但如果特定的MySQL源代碼分發需要不同的版本,配置過程將停止,並顯示一條消息,指示它需要的Boost版本。要獲取Boost及其安裝說明,請訪問 官方網站。安裝Boost後,通過WITH_BOOST在調用CMake時定義選項 ,告訴構建系統Boost文件所在的位置 。例如:
cmake . -DWITH_BOOST=/usr/local/boost_version_number根據需要調整路徑以匹配您的安裝。
ncurses庫。
足夠的空閒記憶。如果在編譯大型源文件時遇到諸如“ 內部編譯器錯誤 ”之類的問題 ,則可能是內存太少。如果在虛擬機上進行編譯,請嘗試增加內存分配。
如果您打算運行測試腳本,則需要Perl。大多數類Unix系統都包含Perl。在Windows上,您可以使用ActiveState Perl等版本。
要從標準源代碼分發安裝MySQL,需要使用以下工具之一來解壓縮分發文件:
對於.tar.gz壓縮的 tar文件:GNU gunzip來解壓縮分發和合理的 tar來解壓縮它。如果您的 tar程序支持該z 選項,它可以解壓縮和解壓縮文件。
已知 GNU tar可以工作。某些操作系統提供的標準 tar無法解析MySQL發行版中的長文件名。您應該下載並安裝GNU tar,或者如果可用,請使用預安裝的GNU tar版本。通常這可以作為 gnutar,gtar或 GNU或自由軟件目錄中的tar使用,例如/usr/sfw/bin或 /usr/local/bin。GNU tar 可從 http://www.gnu.org/software/tar/獲得。
對於.zipZip存檔: WinZip或其他可以讀取.zip文件的工具 。
對於.rpmRPM包:用於構建分發的 rpmbuild程序將其解包。
要從開發源代碼樹安裝MySQL,需要以下附加工具:
需要Git版本控制系統來獲取開發源代碼。在 GitHub的幫助 提供了下載和在不同的平台上安裝Git的指令。MySQL於2014年9月正式加入GitHub。有關MySQL遷移到GitHub的更多信息,請參閱MySQL Release Engineering博客上的公告:GitHub上的MySQL
bison 2.1或更高版本,可從 http://www.gnu.org/software/bison/獲得。(不再支持版本1.)盡可能使用最新版本的 bison ; 如果遇到問題,請升級到更高版本,而不是恢復到更早版本。
bison可從 http://www.gnu.org/software/bison/獲得。 bisonfor Windows可以從 http://gnuwin32.sourceforge.net/packages/bison.htm下載 。下載標有 “ 完整包,不包括來源 ”的包裹。在Windows上, bison的默認位置 是C:\Program Files\GnuWin32目錄。由於目錄名稱中的空間,某些實用程序可能無法找到 bison。此外,如果路徑中有空格,Visual Studio可能會掛起。您可以通過安裝到不包含空格的目錄來解決這些問題; 例如 C:\GnuWin32。
在Solaris Express上,除了bison之外,還必須安裝m4。m4可從http://www.gnu.org/software/m4/獲得。
有關MySQL下載鏡像站點的完整最新列表:可從 https://dev.mysql.com/downloads/mirrors/獲得
按照以上官网所需要求,CentOS 7安装MySQL 8.0所需环境如下:
CMake #编译安装
make 3.75或更高版本 #编译安装
GCC 5.3(Linux) #编译安装见GCC8.2编译安装
Boost C ++庫 #使用mysql-boost自带
ncurses庫 #yum安装
bison 2.1或更高版本 #yum安装
配置MySQL编译安装前之环境
#!/bin/sh
yum -y install wget ncurses ncurses-devel bison bison-devel
wget -c -P /opt/tmp/ http://ftp.iij.ad.jp/pub/db/mysql/Downloads/MySQL-8.0/mysql-boost-8.0.13.tar.gz
wget -c -P /opt/tmp/ https://cmake.org/files/v3.12/cmake-3.12.4.tar.gz
wget -c -P /opt/tmp/ http://ftp.gnu.org/gnu/make/make-4.2.tar.gz
cd /opt/tmp/
tar zxvf cmake-3.12.4.tar.gz
cd cmake-3.12.4
./bootstrap --prefix=/usr/local/cmake
make -j 4
make install
cd ../
tar zxvf make-4.2.tar.gz
cd make-4.2
./configure
make
make install
cd ../
rpm -qa|grep make
yum remove make
sed -i '$a export PATH="$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/cmake/bin"' /etc/profile
source /etc/profile
完成以上配置环境即可正式开始安装MySQL
安装Mysql之前应卸载原有的版本
查询Mysql目录文件 卸载原有MySQL
# rpm -qa | grep mysql
# find / -name mysql
# yum remove -y mysql*
# Preconfiguration setup
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
# Beginning of source-build specific instructions
shell> tar zxvf mysql-VERSION.tar.gz
shell> cd mysql-VERSION
shell> mkdir bld
shell> cd bld
shell> cmake ..
shell> make
shell> make install
install# End of source-build specific instructions
# Postinstallation setup
shell> cd /usr/local/mysql
shell> mkdir mysql-files
shell> chown mysql:mysql mysql-files
shell> chmod 750 mysql-files
shell> bin/mysqld --initialize --user=mysql
shell> bin/mysql_ssl_rsa_setup
shell> bin/mysqld_safe --user=mysql &
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server
|