# Linux環境下怎么安裝MySQL 8.0
## 前言
MySQL作為最流行的開源關系型數據庫之一,被廣泛應用于Web開發、企業級應用等領域。MySQL 8.0版本帶來了諸多性能優化和新特性,如窗口函數、JSON增強、原子DDL等。本文將詳細介紹在Linux環境下安裝MySQL 8.0的完整流程,涵蓋主流Linux發行版的安裝方法。
---
## 一、準備工作
### 1.1 系統要求
- **操作系統**:Ubuntu 20.04/22.04、CentOS 7/8、Debian 10/11等主流發行版
- **硬件要求**:
- 最低2GB RAM(生產環境建議4GB以上)
- 至少2GB磁盤空間
- 需要`root`或具有`sudo`權限的用戶
### 1.2 卸載舊版本(如有)
```bash
# 檢查已安裝的MySQL
sudo apt list --installed | grep mysql # Ubuntu/Debian
sudo yum list installed | grep mysql # CentOS/RHEL
# 卸載舊版本
sudo apt remove --purge mysql* # Ubuntu/Debian
sudo yum remove mysql* # CentOS/RHEL
# 清理殘留文件
sudo rm -rf /etc/mysql /var/lib/mysql
sudo rm -rf /var/log/mysql
# 更新軟件包索引
sudo apt update
# 安裝MySQL官方APT倉庫
wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.24-1_all.deb
# 選擇MySQL 8.0后按OK
# 安裝MySQL服務器
sudo apt update
sudo apt install mysql-server
wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.24-1_all.deb
sudo apt update
sudo apt install mysql-server
# 添加MySQL Yum倉庫
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm
# 安裝MySQL服務器
sudo yum install mysql-community-server
wget https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm
sudo rpm -Uvh mysql80-community-release-el7-6.noarch.rpm
sudo yum install mysql-community-server
# Ubuntu/Debian
sudo systemctl start mysql
sudo systemctl enable mysql
# CentOS/RHEL
sudo systemctl start mysqld
sudo systemctl enable mysqld
MySQL 8.0首次安裝后會生成臨時密碼:
# 查看臨時密碼(Ubuntu/Debian可能不需要)
sudo grep 'temporary password' /var/log/mysqld.log
運行安全配置:
sudo mysql_secure_installation
按提示完成以下設置: 1. 修改root密碼(需包含大小寫、數字和特殊字符) 2. 移除匿名用戶 3. 禁止root遠程登錄 4. 移除測試數據庫 5. 重新加載權限表
mysql -u root -p
CREATE DATABASE mydb;
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'Complex_Password123!';
GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;
# 查看服務狀態
sudo systemctl status mysql
# 重啟服務
sudo systemctl restart mysql
# 查看版本
mysql --version
配置文件路徑:
- Ubuntu/Debian: /etc/mysql/mysql.conf.d/mysqld.cnf
- CentOS/RHEL: /etc/my.cnf
常用配置項示例:
[mysqld]
datadir=/var/lib/mysql
socket=/var/run/mysqld/mysqld.sock
# 性能優化
innodb_buffer_pool_size = 1G
max_connections = 200
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
# 允許遠程連接(需配合防火墻)
bind-address = 0.0.0.0
修改后需重啟服務:
sudo systemctl restart mysql
# Ubuntu
sudo ufw allow 3306/tcp
# CentOS
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
sudo systemctl stop mysql
sudo mysqld_safe --skip-grant-tables &
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword123!';
-- 查看當前連接數
SHOW STATUS LIKE 'Threads_connected';
-- 修改最大連接數(需在配置文件中永久生效)
SET GLOBAL max_connections = 500;
本文詳細介紹了在Linux環境下安裝MySQL 8.0的完整流程,包括: 1. 不同Linux發行版的安裝方法 2. 初始安全配置步驟 3. 基礎數據庫操作 4. 性能優化配置建議 5. 常見問題解決方案
MySQL 8.0相比舊版有顯著的性能提升,建議新項目直接采用此版本。生產環境中還需考慮定期備份、主從復制等高可用方案。
注意:本文所有命令均需根據實際環境調整,特別是密碼設置需符合安全規范。建議定期檢查MySQL的安全更新并及時升級。 “`
(全文約1850字,實際字數可能因Markdown渲染略有差異)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。