在Unix/Linux上使用通用二進制文件安裝MySQL方式
Unix/Linux使用通用二進制文件安裝MySQL
Oracle提供了一組MySQL的二進制發(fā)行版。這些包括壓縮的tar文件形式的通用二進制發(fā)行版(具有.tar.xz擴展名的文件)針對多個平臺,以及特定平臺軟件包格式的二進制文件。
本節(jié)涵蓋了在Unix/Linux平臺上從壓縮的tar文件二進制發(fā)行版安裝MySQL的方法。有關(guān)針對MySQL安全功能的重點進行Linux通用二進制分發(fā)版本安裝說明,請參閱安全部署指南。
MySQL壓縮的tar文件二進制發(fā)行版的名稱格式為mysql-VERSION-OS.tar.xz,其中VERSION是一個數(shù)字(例如8.0.33),而OS表示該發(fā)行版所針對的操作系統(tǒng)類型(例如pc-linux-i686或winx64)。
對于Linux通用二進制發(fā)行版,還有一個“最小安裝”版本的MySQL壓縮tar文件,其名稱形式為mysql-VERSION-OS-GLIBCVER-ARCHminimal.tar.xz。最小安裝分發(fā)版本不包含調(diào)試二進制文件,并且已剝離調(diào)試符號,使其比常規(guī)二進制分發(fā)版小得多。如果選擇安裝最小安裝分發(fā)版,請記得在后續(xù)指令中調(diào)整文件名格式的差異。
警告
- 如果您先前使用操作系統(tǒng)的本機軟件包管理系統(tǒng)(如Yum或APT)安裝了MySQL,可能在使用本地二進制文件進行安裝時會遇到問題。請確保您之前的MySQL安裝已完全刪除(使用軟件包管理系統(tǒng)),并且任何其他文件,例如舊版本的數(shù)據(jù)文件,也已刪除。您還應(yīng)該檢查配置文件,例如/etc/my.cnf或/etc/mysql目錄,并將其刪除。
MySQL對libaio庫有依賴性。如果本地未安裝此庫,數(shù)據(jù)目錄初始化和后續(xù)服務(wù)器啟動步驟將失敗。如有必要,請使用適當?shù)能浖芾砥鬟M行安裝。
- 例如,在基于Yum的系統(tǒng)上:
$> yum search libaio # search for info $> yum install libaio # install library
- 在基于APT的系統(tǒng)上:
$> apt-cache search libaio # search for info $> apt-get install libaio1 # install library
Oracle Linux 8 / Red Hat 8 (EL8):這些平臺默認不安裝MySQL客戶端bin/mysql所需的文件/lib64/libtinfo.so.5,對于mysql-VERSION-el7-x86_64.tar.gz和mysql-VERSION-linux-glibc2.12-x86_64.tar.xz軟件包。
- 為解決這個問題,請安裝ncurses-compat-libs軟件包:
$> yum install ncurses-compat-libs
要安裝壓縮的tar文件二進制發(fā)行版,請解壓縮到您選擇的安裝位置(通常為/usr/local/mysql)。這將創(chuàng)建下表所示的目錄。
表2.3通用Unix/Linux二進制軟件包的MySQL安裝布局:
| Directory | Contents of Directory |
| bin | mysqld服務(wù)器、客戶端和實用程序程序。 |
| docs | MySQL手冊的Info格式。 |
| man | Unix手冊頁。 |
| include | 包含(頭)文件。 |
| lib | 庫文件。 |
| share | 數(shù)據(jù)庫安裝的錯誤消息、字典和SQL。 |
| support-files | 支持文件。 |
調(diào)試版本的mysqld二進制文件可用作mysqld-debug。要從源碼發(fā)行版編譯自己的MySQL調(diào)試版本,請使用適當?shù)呐渲眠x項啟用調(diào)試支持。
- 安裝和使用MySQL二進制發(fā)行版的命令序列如下所示:
$> groupadd mysql $> useradd -r -g mysql -s /bin/false mysql $> cd /usr/local $> tar xvf /path/to/mysql-VERSION-OS.tar.xz $> ln -s full-path-to-mysql-VERSION-OS mysql $> cd mysql $> mkdir mysql-files $> chown mysql:mysql mysql-files $> chmod 750 mysql-files $> bin/mysqld --initialize --user=mysql $> bin/mysql_ssl_rsa_setup $> bin/mysqld_safe --user=mysql & # Next command is optional $> cp support-files/mysql.server /etc/init.d/mysql.server
注意:
- 該過程假定您對系統(tǒng)具有root(管理員)訪問權(quán)限?;蛘?,您可以在每個命令前使用sudo(Linux)或pfexec(Solaris)命令進行前綴處理。
- mysql-files目錄可作為secure_file_priv系統(tǒng)變量的值,用于限制導(dǎo)入和導(dǎo)出操作僅在該特定目錄中進行,從而提供了方便的位置。
創(chuàng)建一個mysql用戶和組
如果您的系統(tǒng)尚未擁有用于運行mysqld的用戶和組,您可能需要創(chuàng)建它們。
以下命令會添加mysql組和mysql用戶。您可能希望將用戶和組的名稱改為與mysql不同的其他名稱。
如果是這樣,請在以下說明中用適當?shù)拿诌M行替換。
- 在不同版本的Unix/Linux上,useradd和groupadd的語法可能略有不同,或者可能有不同的名稱,如adduser和addgroup。
$> groupadd mysql $> useradd -r -g mysql -s /bin/false mysql
注意:
- 由于用戶僅用于所有權(quán)目的,而非登錄目的,useradd命令使用-r和-s /bin/false選項來創(chuàng)建一個沒有登錄權(quán)限的用戶到您的服務(wù)器主機。
- 如果您的useradd不支持這些選項,請省略它們。
獲取并解壓縮發(fā)行版
選擇您想要解壓縮發(fā)行版的目錄,并進入該目錄。
下面的示例將發(fā)行版解壓縮到/usr/local目錄下。因此,這些說明假定您有權(quán)限在/usr/local目錄中創(chuàng)建文件和目錄。
- 如果該目錄受保護,則必須以root用戶身份執(zhí)行安裝。
$> cd /usr/local
根據(jù)“如何獲取MySQL”部分中的說明獲得一個發(fā)行版文件。對于特定版本,所有平臺的二進制發(fā)行版都是從相同的MySQL源碼發(fā)行版構(gòu)建的。解壓縮發(fā)行版將創(chuàng)建安裝目錄。
- 如果tar支持z選項,則可以使用tar來解壓縮和解包發(fā)行版:
$> tar xvf /path/to/mysql-VERSION-OS.tar.xz
tar命令會創(chuàng)建一個名為mysql-VERSION-OS的目錄。
要從壓縮的tar文件二進制發(fā)行版安裝MySQL,您的系統(tǒng)必須具有GNU XZ Utils以解壓縮發(fā)行版,并且需要一個合理的tar來解包。
注意:自MySQL Server 8.0.12起,壓縮算法從Gzip更改為XZ,并且通用二進制文件的文件擴展名從.tar.gz更改為.tar.xz。
已知GNU tar可以正常工作。某些操作系統(tǒng)提供的標準tar無法解壓MySQL發(fā)行版中的長文件名。您應(yīng)該下載并安裝GNU tar,或者如果可用,使用預(yù)先安裝的GNU tar版本。通??梢詫⑵涿麨間nutar、gtar或者在GNU或自由軟件目錄(例如/usr/sfw/bin或/usr/local/bin)中找到??梢詮膆ttp://www.gnu.org/software/tar/獲取GNU tar。
如果您的tar不支持xz格式,則使用xz命令來解壓縮發(fā)行版,并使用tar來解包。
- 將上述的tar命令替換為以下備用命令以解壓縮和提取發(fā)行版:
$> xz -dc /path/to/mysql-VERSION-OS.tar.xz | tar x
- 接下來,創(chuàng)建一個符號鏈接指向tar創(chuàng)建的安裝目錄:
$> ln -s full-path-to-mysql-VERSION-OS mysql
- ln命令創(chuàng)建一個符號鏈接到安裝目錄。這樣,您可以更容易地使用/usr/local/mysql來引用它。為了避免在使用MySQL時始終輸入客戶端程序的路徑名,您可以將/usr/local/mysql/bin目錄添加到您的PATH變量中:
$> export PATH=$PATH:/usr/local/mysql/bin
進行安裝后的設(shè)置
安裝過程的剩余部分涉及設(shè)置發(fā)行版的所有權(quán)和訪問權(quán)限,初始化數(shù)據(jù)目錄,啟動MySQL服務(wù)器,并設(shè)置配置文件。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Linux中大內(nèi)存頁Oracle數(shù)據(jù)庫優(yōu)化的方法
這篇文章主要給大家介紹了關(guān)于Linux中大內(nèi)存頁Oracle數(shù)據(jù)庫優(yōu)化的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2018-11-11
淺談在linux kernel中打印函數(shù)調(diào)用的堆棧的方法
下面小編就為大家?guī)硪黄獪\談在linux kernel中打印函數(shù)調(diào)用的堆棧的方法。小編覺得挺不錯的?,F(xiàn)在就分享給大家。也給大家做個參考。一起跟隨小編過來看看吧2016-12-12

