在本文中,咱們將向你展現如何在CentOS 8操做系統上安裝MySQL 8.0,可從默認的CentOS 8存儲庫中安裝最新版本的MySQL數據庫服務器8.0版,CentOS 8還提供了MariaDB 10.3,它是MySQL 5.7的直接替代品,但有一些限制,若是你的應用程序與MySQL 8.0不兼容,請安裝MariaDB 10.3,參考在CentOS 7服務器中安裝MariaDB 10.4的方法。html
在CentOS 8上安裝MySQL 8.0mysql
經過以root用戶或具備sudo特權的用戶身份使用CentOS軟件包管理器來安裝MySQL 8.0服務器:linux
$ sudo dnf install @mysqlsql
@mysql模塊將安裝MySQL及其全部依賴項。shell
安裝完成後,經過運行如下命令來啓動MySQL服務並使它在啓動時自動啓動:數據庫
$ sudo systemctl enable --now mysqldvim
要檢查MySQL服務器是否正在運行,請輸入:安全
$ sudo systemctl status mysqld服務器
返回信息以下:工具
mysqld.service - MySQL 8.0 database server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2019-10-17 22:09:39 UTC; 15s ago
注:說明安裝MySQL 8.0成功了。
保護MySQL的操做
運行mysql_secure_installation腳本,該腳本執行一些與安全性相關的操做並設置MySQL根密碼:
$ sudo mysql_secure_installation
系統將要求你配置VALIDATE PASSWORD PLUGIN(驗證密碼插件),該插件用於測試MySQL用戶密碼的強度並提升安全性,密碼驗證策略分爲三個級別:低、中和強,若是你不想設置驗證密碼插件,請按Enter。
在下一個提示符下,將要求你設置MySQL root用戶的密碼,完成此操做後,腳本還將要求你刪除匿名用戶,限制root用戶對本地計算機的訪問,並刪除測試數據庫,你應該對全部問題回答「是」。
要從命令行與MySQL服務器進行交互,請使用MySQL客戶端實用程序,它做爲依賴項安裝,經過鍵入如下內容測試根訪問權限:
$ mysql -u root -p
在出現提示時輸入root密碼,而後將顯示MySQL shell,以下所示:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 8.0.17 Source distribution
至此,已經在CentOS 8服務器上安裝並保護了MySQL 8.0,並準備使用它。
身份驗證的操做
因爲CentOS 8中的某些客戶端工具和庫與caching_sha2_password方法不兼容,所以CentOS 8存儲庫中包含的MySQL 8.0服務器設置爲使用舊的mysql_native_password身份驗證插件,該方法在上游MySQL 8.0發行版中設置爲默認。
對於大多數設置,mysql_native_password方法應該沒問題,可是,若是你想將默認身份驗證插件更改成caching_sha2_password,這樣能夠更快並提供更好的安全性,請打開如下配置文件:
$ sudo vim /etc/my.cnf.d/mysql-default-authentication-plugin.cnf
將default_authentication_plugin的值更改成caching_sha2_password:
[mysqld]
default_authentication_plugin=caching_sha2_password
關閉並保存文件,而後從新啓動MySQL服務器以使更改生效:
$ sudo systemctl restart mysqld
結論
CentOS 8隨MySQL 8.0一塊兒發行,安裝就像鍵入dnf install @mysql同樣簡單。
如今你的MySQL 8服務器已啓動並正在運行,能夠鏈接到MySQL Shell,並開始建立新的數據庫和用戶。