2.2使用通用的二進制文件在unix/linux上安裝MySQL
2.2使用通用的二進制文件在unix/linux上安裝MySQL
Oracle提供了一組MySQL的二進制發行版。對於許多平臺,它包括以tar壓縮文件形式的通用二進制發行版(文件是.tar. gz的擴展格式),以及針對特殊平臺的二進制包格式文件。
本章節涉及以tar壓縮的二進制文件發行版來安裝MySQL。對於其他特殊平臺的包格式,請參閱其他特殊平臺的章節。例如,對於Windows發行版,參閱章節2.3,“在Microsoft Windows上安裝MySQL”。
要獲得MySQL,參閱章節2.1.2,“如何獲得MySQL”。
MySQL的tar壓縮二進制文件發行版的命名格式為mysql-VERSION-OS.tar.gz
警告
如果你之前用本機的包管理系統安裝了MySQL,例如yum或apt-get,在使用本機二進制文件安裝的時候你可能遇到問題。請確保你之前安裝的MySQL已經徹底地刪除(使用你的包管理系統),以及任何其他的文件,例如你的舊版本的數據文件,也要刪除。你還應該檢查配置文件,例如/etc/my.cnf或/etc/mysql目錄並且刪除他們。
關於使用官方MySQL安裝包替換第三方安裝包的信息,參閱有關Apt指南或Yum指南。
重要事項
MySQL依賴於libaio
shell> yumsearch libaio # search for info
shell> yuminstall libaio # install library
或者,在基於APT安裝的系統上:
shell> apt-cachesearch libaio # search for info
shell> apt-getinstall libaio1 # install library
對於MySQL 5.7.19和更高版本
如果遇到問題需要提交一個錯誤文件,請使用章節1.7中的說明,“如何報告錯誤或問題”。
在Unix上安裝tar壓縮的二進制文件發行版時,請在你選擇的安裝位置解壓(通常是/usr/local/mysql)。這將創建下面表中所示的目錄。
表2.3通用Unix/Linux二進制包的MySQL安裝布局
目錄 | 目錄的內容 |
bin | mysqld服務,客戶端和實用程序 |
data | 日誌文件,數據 |
docs | 信息格式的MySQL手冊 |
man | unix手冊頁 |
include | 包括(頭)文件 |
lib | 庫 |
share | 各種支持文件,包括錯誤消息,示例配置文件,用於數據庫安裝的SQL |
mysqld二進制文件的調試版本可以用於mysqld-debug。要從源代碼發行版中編譯你自己的MySQL調試版本,使用適當的配置選項來啟動調試支持。參閱章節2.9,“從源代碼安裝MySQL”。
要安裝和使用MySQL二進制發行版,命令序列如下:
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> mkdir mysql-files
shell> chmod 750 mysql-files
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> bin/mysql_install_db --user=mysql # MySQL 5.7.5
shell> bin/mysqld --initialize --user=mysql # MySQL 5.7.6 and up
shell> bin/mysql_ssl_rsa_setup # MySQL 5.7.6 and up
shell> chown -R root .
shell> chown -R mysql data mysql-files
shell> bin/mysqld_safe --user=mysql &
# Next command is optional下一個命令是可選的
shell> cp support-files/mysql.server /etc/init.d/mysql.server
註意事項
這個過程假設你擁有root(administrator)訪問系統的權限。或者,你可以使用sudo(Linux)或pfexec(Solaris) 命令來前綴每個命令。
註意事項
在MySQL 5.7.4之前,這個過程不會給MySQL帳戶分配密碼。為此,請使用章節2.10.4中的說明,“保護初始MySQL帳戶”。
mysql-files目錄提供了一個方便的位置,用於secure_file_priv系統變量值,限制對特定目錄的導入/導出操作。參閱章節5.1.5,“服務器系統變量”。
在MySQL 5.7.5之前,mysql_install_db在基本安裝目錄中創建一個名為my.cnf的默認選項文件。這個文件是由包含在發行包中命名my-default.cnf的模版創建的。詳細信息,參閱章節5.1.2“服務器配置默認值”。
註意事項
在MySQL 5.7.18的情況下,my-default.cnf不再被分發包所包含或安裝。
前面描述了二進制發行版的安裝,更詳細版本如下。
新建一個mysql用戶和組
如果你的系統還沒有一個用於運行mysqld的用戶和組,那麽你可能需要創建一個。下面的命令添加了mysql組和mysql用戶。你可能想要調用其他的用戶和組,而不是mysql。如果是這樣,在下面的指令中用適當的名稱替代。在不同的Unix版本上,useradd和groupadd的語法可能略有不同,或者它們可能有不同的名稱,例如adduser和addgroup。
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
註意事項
因為用戶只需要所有權功能,而不需要登錄功能,useradd命令使用-r和-s /bin/false選項來創建一個沒有到你服務器主機登錄權限的用戶。如果你的useradd不支持這些選項,請忽略他們。
獲取和拆包發行版
選擇你想要拆包發行版的目錄下,並將位置更改為這個目錄。此處舉例在/usr/local下面拆包發行版。這個指令假定你有權限在/usr/local中創建文件和目錄。如果該目錄受到保護,你必須以root用戶來執行安裝。
shell> cd /usr/local
在章節2.1.2,“如何獲得MySQL”裏,使用這個指令獲得一個發行版文件。對於給定的發行版,所有平臺的二進制發行版都是由相同的MySQL源發行版構建的。
在新建的安裝目錄裏拆包發行版。如果有z選項支持,tar能夠解壓和拆包發行版:
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
tar命令創建了一個名為mysql-VERSION-OS的目錄。
要從壓縮的tar文件二進制發行版中安裝MySQL,你的系統必須有GNU gunzip來解壓分發版和一個合理的tar程序來拆包它。如果你的tar程序支持z選項,那麽它既可以解壓也可以拆包文件。
GNU tar的作用是眾所周知。在MySQL發行版中,一些操作系統提供的標準tar無法拆包長文件名。你應該下載並安裝GNU tar,或者如果有的話,請使用GNUtar的預安裝版本。在GNU或自由軟件目錄中通常可用的是gnutar,gtar或tar,比如/usr/sfw/bin或/usr/local/bin。GNU tar可以從http://www.gnu.org/software/tar/獲得。
如果你的tar不支持z選項,使用gunzip解壓發行版和使用tar對他拆包。使用以下替代命令替換前面的tar命令,以解壓並提取分布:
shell> gunzip < /path/to/mysql-VERSION-OS.tar.gz | tar xvf -
接下來,對tar創建的安裝目錄新建一個符號鏈接:
shell> ln -s full-path-to-mysql-VERSION-OS mysql
ln命令創建了到安裝目錄的符號鏈接。這使你可以更容易地以/usr/local/mysql來訪問。當你在使用MySQL工作時,總是能夠避免打印客戶端程序的路徑名,你可以添加/usr/local/mysql/bin目錄到你的PATH變量裏:
shell> export PATH=$PATH:/usr/local/mysql/bin
執行安裝後的設置
安裝程序的其余部分包括設置發行版的所有權和訪問權限,初始化數據目錄,啟動MySQL服務器,和設置配置文件。相關說明,請參閱章節2.10,“安裝後的設置和測試”。
本文出自 “白話真相” 博客,請務必保留此出處http://truthonly.blog.51cto.com/2594168/1970313
2.2使用通用的二進制文件在unix/linux上安裝MySQL