資料來源:2.5.1 Installing MySQL on Linux Using the MySQL Yum Repository
MySQL Yum 倉庫 為 Oracle Linux、Red Hat Enterprise Linux劣针、CentOS 和 Fedora 提供了 RPM 安裝包噩咪,用于安裝 MySQL server、client、 MySQL Workbench、MySQL Utilities、MySQL Router旷痕、MySQL Shell、Connector/ODBC顽冶、Connector/Python 等等(并非所有安裝包都適用于所有發(fā)行版;有關(guān)詳細(xì)信息售碳,請(qǐng)參閱使用 Yum 安裝其他 MySQL 產(chǎn)品和組件)强重。
開始安裝前
作為一種流行的開源軟件,MySQL以其原有的或重新打包的方式贸人,可以廣泛地安裝在來自不同來源的許多系統(tǒng)上间景,包括不同軟件的下載站點(diǎn)、軟件倉庫等艺智。以下說明假設(shè)您的系統(tǒng)可以使用中第三方分布式RPM安裝包并MySQL尚未安裝倘要;如果不是這樣,請(qǐng)參考章節(jié)?2.11.1.5, “使用 MySQL Yum 倉庫升級(jí) MySQL”或章節(jié)?2.5.2, “使用 MySQL Yum 倉庫替換第三方發(fā)行版的 MySQL” 十拣。
初次安裝 MySQL 的步驟
按照以下步驟使用 MySQL Yum 倉庫安裝 MySQL 的最新 GA 版本:
1.添加 MySQL Yum 倉庫
首先封拧,將 MySQL Yum 倉庫 添加到系統(tǒng)的倉庫列表中。這是一個(gè)一次性操作夭问,可以執(zhí)行由 MySQL 提供的 RPM 進(jìn)行安裝泽西。按以下步驟:
從MySQL 開發(fā)人員專區(qū)轉(zhuǎn)到下載 MySQL Yum 倉庫的頁面 (https://dev.mysql.com/downloads/repo/yum/)。
選擇并下載對(duì)應(yīng)平臺(tái)的發(fā)布包缰趋。
使用以下命令安裝下載的發(fā)布包捧杉, 替換platform-and-version-specific-package-name為下載的 RPM 包名:
shell> sudo yum localinstall platform-and-version-specific-package-name.rpm
基于 EL6 的系統(tǒng)陕见, 命令形式為:
shell> sudo yum localinstall mysql80-community-release-el6-{version-number}.noarch.rpm
基于 EL7 的系統(tǒng):
shell> sudo yum localinstall mysql80-community-release-el7-{version-number}.noarch.rpm
Fedora 29:
shell> sudo dnf localinstall mysql80-community-release-fc29-{version-number}.noarch.rpm
Fedora 28:
shell> sudo dnf localinstall mysql80-community-release-fc28-{version-number}.noarch.rpm
安裝命令將會(huì)添加 MySQL Yum 倉庫到本地系統(tǒng)倉庫列表,并下載 GnuPG 秘鑰以檢查軟件包的完整性味抖。 有關(guān) GnuPG 秘鑰檢查的詳細(xì)信息评甜,請(qǐng)參閱:章節(jié)?2.1.3.2, “使用 GnuPG 進(jìn)行簽名檢查”。
可以通過以下命令檢查 MySQL Yum 倉庫是否成功添加(對(duì)于 Fedora, 需要將命令中的yum替換為dnf):
shell> yum repolist enabled | grep "mysql.*-community.*"
說明
一旦系統(tǒng)上啟用了 MySQL Yum 倉庫仔涩,任何通過 yum update 命令(或 dnf upgrade 于 fedora)進(jìn)行的系統(tǒng)范圍更新忍坷,都將升級(jí)系統(tǒng)上的 MySQL 包,并且如果 Yum 在 MySQL Yum 倉庫中找到替換包红柱,也將替換任何本地第三方包承匣;請(qǐng)參閱 章節(jié)?2.11.1.5, “使用 MySQL Yum 倉庫升級(jí) MySQL”,以及可能對(duì)系統(tǒng)產(chǎn)生的影響的討論锤悄,可以參閱 升級(jí)共享客戶端庫 韧骗。
2.選擇發(fā)布系列
使用 MySQL Yum 倉庫時(shí),默認(rèn)選擇最新的 GA 系列 (當(dāng)前為 MySQL 8.0)進(jìn)行安裝零聚。 如果正是你想要的袍暴,那么你可以跳到下一步,安裝 MySQL隶症。
在 MySQL Yum 倉庫中政模,MySQL Community Server 不同版本系統(tǒng)是托管在不同子庫中的。子庫默認(rèn)啟用最新的 GA 系列 (當(dāng)前為 MySQL 8.0)蚂会, 并且子庫默認(rèn)禁止所有其他系列(例如淋样,MySQL 8.0 系列)。使用此命令可以查看在 MySQL Yum 倉庫中的所有子庫胁住,并且可以看到它們哪些是啟用的或禁用的(對(duì)于 Fedora趁猴,需要將命令中的yum替換為dnf):
shell> yum repolist all | grep mysql
要安裝最新 GA 系列的最新發(fā)行版,不需要配置彪见。要想安裝最新 GA 系列以外的特定系列最新發(fā)行版儡司,需要在運(yùn)行安裝命令之前禁用最新 GA 系列子倉庫, 并啟用特定系列子倉庫余指。如果平臺(tái)支持yum-config-manager捕犬,那么可以通過發(fā)出以下命令來實(shí)現(xiàn)這一點(diǎn),禁用 5.7 系列子倉庫并啟用 8.0 系列:
shell> sudo yum-config-manager --disable mysql57-community
shell> sudo yum-config-manager --enable mysql80-community
對(duì)于啟用 dnf 的平臺(tái):
shell> sudo dnf config-manager --disable mysql57-community
shell> sudo dnf config-manager --enable mysql80-community
除了使用yum-config-manager或dnf config-manager命令之外酵镜,你也可以通過手動(dòng)編寫/etc/yum.repos.d/mysql-community.repo文件來選擇發(fā)布系列碉碉。這是文件中關(guān)于發(fā)行系列子倉庫的特有條目:
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
找到想要配置的子倉庫條目,然后編輯enabled 選項(xiàng)淮韭。指定enabled=0禁用子倉庫誉裆,或者enabled=1啟用子倉庫。例如缸濒,要安裝 MySQL 8.0足丢,需要確保上述 MySQL 5.7 子倉庫條目為enabled=0粱腻,8.0 系列的條目為enabled=1:
# Enable to use MySQL 8.0
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
在任何時(shí)候,都應(yīng)該只啟用一個(gè)發(fā)行系列的子倉庫斩跌。當(dāng)多個(gè)發(fā)行系列子倉庫被啟用時(shí)绍些,Yum 將使用最新系列。
通過以下命令并檢查其輸出耀鸦,驗(yàn)證是否已啟用并禁用了正確的子倉庫(對(duì)于啟用 dnf 的系統(tǒng)柬批,需要將命令中的yum替換為dnf):
shell> yum repolist enabled | grep mysql
3.安裝 MySQL
通過以下命令安裝 MySQL(對(duì)于 Fedora,需要將命令中的yum替換為dnf):
shell> sudo yum install mysql-community-server
這將安裝 MySQL server? 包 (mysql-community-server)以及運(yùn)行該服務(wù)器所需的組件包袖订,包括客戶端包 (mysql-community-client)氮帐,客戶端和服務(wù)端通用的錯(cuò)誤消息和字符集(mysql-community-common),以及共享客戶端庫 (mysql-community-libs)洛姑。
4.啟動(dòng) MySQL 服務(wù)器
使用以下命令啟動(dòng) MySQL 服務(wù)器:
shell> sudo service mysqld start
Starting mysqld:[ OK ]
您可以使用以下命令檢查 MySQL 服務(wù)器的狀態(tài):
shell> sudo service mysqld status
mysqld (pid 3066) is running.
在服務(wù)器的初始啟動(dòng)時(shí)上沐,如果服務(wù)器的數(shù)據(jù)目錄為空,則會(huì)發(fā)生以下情況:
服務(wù)器會(huì)初始化楞艾。
SSL 證書和密鑰文件會(huì)生成在數(shù)據(jù)目錄中参咙。
validate_password會(huì)安裝并啟用。
超級(jí)用戶賬號(hào)'root'@'localhost'會(huì)創(chuàng)建硫眯。 超級(jí)用戶的密碼會(huì)設(shè)置并存儲(chǔ)在錯(cuò)誤日志文件中蕴侧。要顯示它,請(qǐng)使用以下命令:
shell> sudo grep 'temporary password' /var/log/mysqld.log
盡快更改在記錄中給 root 生成的臨時(shí)密碼两入,為超級(jí)用戶帳戶設(shè)置自定義密碼:
shell> mysql -uroot -p
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
說明
validate_password是默認(rèn)安裝的净宵。默認(rèn)由 validate_password 實(shí)現(xiàn)的密碼策略要求:密碼至少包含一個(gè)大寫字母、一個(gè)小寫字母裹纳、一個(gè)數(shù)字和一個(gè)特殊字符塘娶,并且密碼的總長度至少為8個(gè)字符。
關(guān)于安裝程序后的更多信息痊夭,請(qǐng)參閱章節(jié)?2.10, “安裝后的設(shè)置和測(cè)試”。
說明
基于 EL7 平臺(tái)的兼容信息:來自平臺(tái)本地軟件倉庫用來安裝 MySQL 服務(wù)器的下列 RPM 包與來自 MySQL Yum 倉庫的包不兼容脏里。一旦使用 MySQL Yum 倉庫安裝了 MySQL她我,你將無法安裝這些包(反之亦然)。
·akonadi-mysql
使用 Yum 安裝其他 MySQL 產(chǎn)品和組件
你可以使用 Yum 來安裝和管理 MySQL 的各個(gè)組件迫横。 其中的一些組件被托管在 MySQL Yum 的子倉庫中:例如番舆,MySQL Connectors 位于 MySQL Connectors Community 子倉庫中,MySQL Workbench 在 MySQL Tools Community 中矾踱『薇罚可以使用以下命令列出平臺(tái)中來自 MySQL Yum 倉庫的所有可用的 MySQL 組件包(對(duì)于 Fedora,需要將命令中的yum替換為dnf):
shell> sudo yum --disablerepo=\* --enablerepo='mysql*-community*' list available
使用以下命令可以選擇安裝任意包呛讲,替換package-name為包名(對(duì)于 Fedora禾怠,需要將命令中的yum替換為dnf):
shell> sudo yum install package-name
例如返奉,在 Fedorato 上安裝 MySQL Workbench:
shell> sudo dnf install mysql-workbench-community
安裝共享客戶端庫 (對(duì)于 Fedora,需要將命令中的yum替換為dnf):
shell> sudo yum install mysql-community-libs
平臺(tái)特異性
ARM 支持
Oracle Linux 7 支持 ARM 64位 (aarch64) 吗氏,并且需要 Oracle Linux 7 軟件集合倉庫 (ol7_software_collections)芽偏。 例如,要安裝服務(wù)器:
shell> yum-config-manager --enable ol7_software_collections
shell> yum install mysql-community-server
說明
從 MySQL 8.0.12 開始弦讽,Oracle Linux 7 支持 ARM 64位(aarch64)污尉。
已知限制
8.0.12 版本要求在執(zhí)行yum install 步驟之后,通過執(zhí)行l(wèi)n -s /opt/oracle/oracle-armtoolset-1/root/usr/lib64 /usr/lib64/gcc7 來調(diào)整libstdc++7路徑往产。
用 Yum 更新 MySQL
除了安裝之外被碗, 你也可以使用 MySQL Yum 倉庫為 MySQL 產(chǎn)品和組件執(zhí)行更新。更多詳情仿村,參閱章節(jié)?2.11.1.5, “使用 MySQL Yum 倉庫升級(jí) MySQL”锐朴。