MySQL是一個廣泛使用的開源關系型數據庫管理系統,廣泛應用于Web應用程序的后端數據存儲。MySQL 8.0是MySQL的最新版本,帶來了許多新特性和性能改進。本文將詳細介紹如何在CentOS 7上安裝MySQL 8.0。
在開始安裝之前,確保你的CentOS 7系統已經更新到最新版本,并且具備root權限或sudo權限。
首先,更新系統以確保所有軟件包都是最新的:
sudo yum update -y
安裝一些必要的工具,如wget
和vim
:
sudo yum install -y wget vim
MySQL官方提供了一個Yum倉庫,我們可以通過這個倉庫來安裝MySQL 8.0。
使用wget
命令下載MySQL Yum Repository的RPM包:
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
下載完成后,使用rpm
命令安裝這個RPM包:
sudo rpm -ivh mysql80-community-release-el7-3.noarch.rpm
安裝完成后,可以通過以下命令驗證MySQL Yum Repository是否已成功添加:
yum repolist enabled | grep "mysql.*-community.*"
如果看到類似以下的輸出,說明MySQL Yum Repository已成功添加:
mysql-connectors-community/x86_64 MySQL Connectors Community 74
mysql-tools-community/x86_64 MySQL Tools Community 85
mysql80-community/x86_64 MySQL 8.0 Community Server 364
使用yum
命令安裝MySQL Server:
sudo yum install -y mysql-community-server
安裝完成后,啟動MySQL服務并設置開機自啟:
sudo systemctl start mysqld
sudo systemctl enable mysqld
使用以下命令檢查MySQL服務是否已成功啟動:
sudo systemctl status mysqld
如果看到類似以下的輸出,說明MySQL服務已成功啟動:
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2023-10-02 12:34:56 UTC; 10s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 12345 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
Process: 12344 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 12346 (mysqld)
CGroup: /system.slice/mysqld.service
└─12346 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
MySQL 8.0在安裝完成后會生成一個臨時密碼,我們需要使用這個密碼來登錄MySQL并修改密碼。
使用以下命令獲取臨時密碼:
sudo grep 'temporary password' /var/log/mysqld.log
輸出類似于:
2023-10-02T12:34:56.123456Z 1 [Note] A temporary password is generated for root@localhost: Abc12345
其中Abc12345
就是臨時密碼。
使用臨時密碼登錄MySQL:
mysql -uroot -p
輸入臨時密碼后,你將進入MySQL命令行界面。
在MySQL命令行界面中,使用以下命令修改root用戶的密碼:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword123!';
將NewPassword123!
替換為你想要設置的新密碼。
修改密碼后,使用以下命令退出MySQL:
exit;
MySQL提供了一個安全腳本mysql_secure_installation
,可以幫助我們配置MySQL的安全性。
運行以下命令啟動安全腳本:
sudo mysql_secure_installation
按照提示依次進行以下操作:
Y
)。N
)。Y
)。Y
)。Y
)。Y
)。如果你需要從遠程主機訪問MySQL服務器,可以按照以下步驟進行配置。
編輯MySQL配置文件/etc/my.cnf
,找到bind-address
行,將其注釋掉或改為0.0.0.0
:
sudo vim /etc/my.cnf
找到以下行:
bind-address = 127.0.0.1
修改為:
# bind-address = 127.0.0.1
或者:
bind-address = 0.0.0.0
保存并退出。
修改配置文件后,重啟MySQL服務以使更改生效:
sudo systemctl restart mysqld
登錄MySQL,創建一個允許遠程訪問的用戶:
mysql -uroot -p
在MySQL命令行界面中,執行以下命令:
CREATE USER 'remote_user'@'%' IDENTIFIED BY 'RemotePassword123!';
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
將remote_user
和RemotePassword123!
替換為你想要設置的用戶名和密碼。
如果你的服務器啟用了防火墻,需要開放MySQL的默認端口(3306):
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
在服務器上使用以下命令測試本地連接:
mysql -uroot -p
輸入密碼后,如果成功進入MySQL命令行界面,說明本地連接正常。
在遠程主機上使用以下命令測試遠程連接:
mysql -h your_server_ip -u remote_user -p
輸入密碼后,如果成功進入MySQL命令行界面,說明遠程連接正常。
通過以上步驟,你已經成功在CentOS 7上安裝并配置了MySQL 8.0。MySQL 8.0帶來了許多新特性和性能改進,適用于各種規模的應用程序。希望本文能幫助你順利完成MySQL 8.0的安裝和配置。如果你在安裝過程中遇到任何問題,可以參考MySQL官方文檔或尋求社區的幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。