如何在CentOS 7上安裝MySQL
Install MySQL On CentOS
隨著CentOS 7 MySQL的釋出,全球最受歡迎的開源關係資料庫管理系統在CentOS的儲存庫中不再可用,而且MariaDB已成為預設的資料庫系統。 MariaDB是MySQL的向後相容,二進位制外掛替代品。
在本教程中,我們將向您展示如何在CentOS 7機器上安裝MySQL。
如果要安裝MariaDB而不是MySQL,請檢視MariaDB的安裝說明教程。
準備
在開始本教程之前,請確保使用具有sudo許可權的使用者帳戶或root使用者登入到您的伺服器。 最好將管理命令作為sudo使用者而不是root使用者執行,如果系統上沒有sudo使用者,則可以按照這些說明建立sudo使用者。
正如我們在介紹中提到的,MySQL在預設的CentOS 7儲存庫中不可用,因此我們將從MySQL Yum儲存庫安裝軟體包。 在以下部分中,我們將向您展示如何安裝MySQL 8.0和MySQL 5.7。 您應該只在CentOS 7伺服器上安裝一個MySQL版本。 如果您不確定要安裝哪個版本,請參閱您要在伺服器上部署的應用程式的文件。
如何安裝MySQL 8.0
在撰寫本文時,最新版本的MySQL是8.0版。 要安裝它,請按照以下步驟操作:
01、下載並啟用儲存庫
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
02、安裝MySQL 8.0包
使用yum將MySQL安裝為任何其他軟體包:
yum install mysql-community-server
在安裝過程中,yum可能會提示您匯入MySQL GPG金鑰。 輸入y並按Enter鍵。
如何安裝MySQL 5.7
要安裝以前穩定版本的MySQL,MySQL 5.7,請按照以下步驟操作:
01、下載並新增儲存庫
sudo yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
02、安裝MySQL 5.7包
使用yum將MySQL安裝為任何其他軟體包:
yum install mysql-community-server
下面的部分與MySQL 8.0和MySQL 5.7相關
啟動MySQL
安裝完成後,啟用並啟動MySQL服務型別:
sudo systemctl enable mysqld
sudo systemctl start mysqld
我們可以通過輸入以下內容來檢查MySQL服務狀態
sudo systemctl status mysqld
輸出結果:
mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2018-05-23 11:02:43 UTC; 14min ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 4293 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 4310 (mysqld)
Status: "SERVER_OPERATING"
CGroup: /system.slice/mysqld.service
└─4310 /usr/sbin/mysqld
MySQL安全配置
當MySQL伺服器第一次啟動時,會為MySQL root使用者生成臨時密碼。 您可以通過執行以下命令找到密碼:
sudo grep 'temporary password' /var/log/mysqld.log
輸出結果類似下面內容:
2018-09-16T10:59:51.251159Z 5 [Note] [MY-010454] [Server] A temporary password is generated for [email protected]: q&0)V!?fjksL
記下密碼,因為下一個命令會要求您輸入臨時root密碼。
執行mysql_secure_installation命令以提高MySQL安裝的安全性:
sudo mysql_secure_installation
輸出結果:
Securing the MySQL server deployment.
Enter password for user root:
輸入臨時密碼後,系統會要求您為root使用者設定新密碼。 密碼長度必須至少為8個字元,並且至少包含一個大寫字母,一個小寫字母,一個數字和一個特殊字元。
輸入介面如下:The existing password for the user account root has expired. Please set a new password.
New password:
Re-enter new password:
該指令碼還會要求您刪除匿名使用者,限制root使用者對本地計算機的訪問許可權並刪除測試資料庫。 你應該對所有問題回答“Y”(yes)。
從命令列連線到MySQL
要通過終端與MySQL互動,我們將使用MySQL客戶端作為MySQL伺服器包的依賴項。
以root使用者身份登入MySQL伺服器:
mysql -u root -p
系統將提示您輸入執行mysql_secure_installation指令碼時先前設定的root密碼。
輸入密碼後,您將看到mysql shell,如下所示:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 8.0.11 MySQL Community Server - GPL
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
建立資料庫
連線到MySQL shell後,可以通過鍵入以下命令來建立新資料庫:
mysql > CREATE DATABASE new_database;
輸出結果:
Query OK, 1 row affected (0.00 sec)
建立表
現在我們建立了一個數據庫,我們可以建立一個表來儲存一些資料。
在執行用於建立表的SQL語句之前,我們需要連線到資料庫:
mysql > use new_database;
在這個例子中,我們將建立一個名為contacts的簡單表,其中包含三個欄位:id,name和email:
CREATE TABLE contacts (
id INT PRIMARY KEY,
name VARCHAR(30),
email VARCHAR(30)
);
輸出結果:
Query OK, 1 row affected (0.00 sec)
總結
在本教程中,我們向您展示瞭如何在CentOS 7伺服器上安裝和保護MySQL伺服器。 我們還向您展示瞭如何連線到MySQL shell以及如何建立新的資料庫和表。如果您有相關問題,歡迎留言討論.