# Linux下如何使用yum安裝MySQL
## 前言
MySQL作為最流行的開源關系型數據庫之一,在Web應用、企業系統等領域被廣泛使用。在Linux系統中,使用yum包管理器可以快速完成MySQL的安裝和配置。本文將詳細介紹在RHEL/CentOS等基于RPM的Linux發行版中,如何使用yum工具安裝MySQL數據庫。
## 一、準備工作
### 1.1 系統要求
- 操作系統:RHEL/CentOS 7/8/9或兼容發行版
- 用戶權限:root或具有sudo權限的用戶
- 網絡連接:需要能訪問官方/鏡像軟件倉庫
### 1.2 檢查現有MySQL
安裝前建議檢查系統是否已存在MySQL:
```bash
rpm -qa | grep mysql
mysqladmin --version
如果存在舊版本,建議先備份數據后卸載:
sudo yum remove mysql*
MySQL提供了專門的YUM倉庫,包含最新穩定版本:
# 以CentOS 7為例
wget https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm
sudo rpm -Uvh mysql80-community-release-el7-6.noarch.rpm
yum repolist enabled | grep "mysql.*-community"
應看到類似輸出:
mysql-connectors-community MySQL Connectors Community
mysql-tools-community MySQL Tools Community
mysql80-community MySQL 8.0 Community Server
sudo yum install mysql-community-server
此命令會安裝: - mysql-community-server(主服務) - mysql-community-client(客戶端工具) - mysql-community-common(公共文件) - mysql-community-libs(共享庫)
如需安裝特定版本(如5.7),需禁用默認倉庫并啟用指定版本倉庫:
sudo yum-config-manager --disable mysql80-community
sudo yum-config-manager --enable mysql57-community
然后重新執行安裝命令。
sudo systemctl start mysqld
sudo systemctl enable mysqld
MySQL 5.7+版本會在首次啟動時生成臨時root密碼:
sudo grep 'temporary password' /var/log/mysqld.log
輸出示例:
2023-01-01T00:00:00.000000Z 1 [Note] A temporary password is generated for root@localhost: Abc123!@#
運行安全腳本:
sudo mysql_secure_installation
按提示操作: 1. 輸入臨時密碼 2. 設置新密碼(需滿足復雜度要求) 3. 移除匿名用戶 4. 禁止root遠程登錄 5. 移除測試數據庫 6. 重新加載權限表
mysql -u root -p
CREATE DATABASE testdb;
CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'StrongPassword123!';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'localhost';
FLUSH PRIVILEGES;
# 查看服務狀態
sudo systemctl status mysqld
# 重啟服務
sudo systemctl restart mysqld
# 查看版本
mysql --version
主配置文件:
/etc/my.cnf
或
/etc/mysql/my.cnf
自定義配置建議放在:
/etc/my.cnf.d/
[mysqld]
innodb_buffer_pool_size = 1G
innodb_log_file_size = 256M
max_connections = 200
query_cache_size = 64M
[mysqld]
bind-address = 0.0.0.0
GRANT ALL ON *.* TO 'remoteuser'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
錯誤示例:
Error: Package: mysql-community-server-8.0.33-1.el7.x86_64
Requires: libcrypto.so.10(OPENSSL_1.0.2)(64bit)
解決方案:
sudo yum install openssl-compat
臨時降低密碼強度要求:
SET GLOBAL validate_password.policy=LOW;
SET GLOBAL validate_password.length=4;
修改為UTF-8編碼:
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
mysqldump -u root -p --all-databases > full_backup.sql
mysql -u root -p < full_backup.sql
sudo yum update mysql-server
通過yum安裝MySQL是最簡便的方式之一,主要優勢包括: - 自動處理依賴關系 - 方便版本管理 - 支持安全更新
建議生產環境中: 1. 定期備份重要數據 2. 及時安裝安全更新 3. 根據硬件配置優化參數 4. 限制不必要的網絡訪問
命令 | 說明 |
---|---|
yum info mysql-community-server |
查看包信息 |
mysqladmin -u root -p version |
查看運行版本 |
SHOW VARIABLES LIKE '%version%'; |
查看詳細版本信息 |
SHOW DATABASES; |
列出所有數據庫 |
”`
注:本文以MySQL 8.0為例,實際使用時請根據您的具體需求選擇合適版本。不同Linux發行版和MySQL版本可能在細節上略有差異。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。