# Linux系統中如何安裝MySQL
## 前言
MySQL作為最流行的開源關系型數據庫之一,被廣泛應用于Web開發、數據存儲等領域。本文將詳細介紹在Linux系統下安裝MySQL的多種方法,涵蓋不同發行版的安裝方式、基本配置及安全設置。
---
## 一、準備工作
### 1.1 系統環境檢查
在安裝前,請確認:
- 已獲取`root`或`sudo`權限
- 系統版本(通過`cat /etc/os-release`查看)
- 磁盤空間(至少500MB可用)
- 內存(建議1GB以上)
### 1.2 卸載舊版本(可選)
若系統存在舊版MySQL/MariaDB:
```bash
sudo apt remove --purge mysql* mariadb* # Debian/Ubuntu
sudo yum remove mysql mariadb # CentOS/RHEL
sudo rm -rf /etc/mysql /var/lib/mysql
# 更新軟件源
sudo apt update
# 安裝MySQL服務器
sudo apt install mysql-server
# 驗證安裝
systemctl status mysql
# 添加MySQL官方倉庫(可選)
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm
# 安裝MySQL
sudo yum install mysql-community-server
# 啟動服務
sudo systemctl start mysqld
適用于需要自定義安裝路徑的場景:
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.33-linux-glibc2.17-x86_64.tar.gz
tar -xvf mysql-8.0.33-linux-glibc2.17-x86_64.tar.gz
sudo mv mysql-8.0.33 /usr/local/mysql
cd /usr/local/mysql
sudo ./bin/mysqld --initialize --user=mysql
docker pull mysql:8.0
docker run --name mysql-container \
-e MYSQL_ROOT_PASSWORD=yourpassword \
-p 3306:3306 \
-d mysql:8.0
sudo mysql_secure_installation
按提示完成: 1. 設置root密碼 2. 移除匿名用戶 3. 禁止遠程root登錄 4. 移除測試數據庫 5. 重載權限表
CREATE USER 'admin'@'%' IDENTIFIED BY 'StrongPassword123!';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
/etc/mysql/my.cnf
中的socket
路徑
sudo mysqld_safe --skip-grant-tables &
mysql -u root
修改/etc/mysql/my.cnf
:
[mysqld]
innodb_buffer_pool_size = 1G # 建議為物理內存的50-70%
max_connections = 200
query_cache_size = 64M
-- 創建數據庫
CREATE DATABASE webapp;
-- 導入SQL文件
mysql -u username -p webapp < backup.sql
# 備份整個數據庫
mysqldump -u root -p --all-databases > full_backup.sql
# 定時備份(crontab示例)
0 3 * * * /usr/bin/mysqldump -uadmin -p'password' webapp > /backups/webapp_$(date +\%F).sql
tail -f /var/log/mysql/error.log
本文介紹了Linux下安裝MySQL的多種方法及后續配置。根據實際需求選擇合適的方式,生產環境建議使用官方倉庫或Docker部署。更多高級配置可參考MySQL官方文檔。
附:常用命令速查 - 啟動服務:
sudo systemctl start mysql
- 設置開機啟動:sudo systemctl enable mysql
- 登錄MySQL:mysql -u username -p
- 查看版本:SELECT version();
“`
(注:實際字數約1500字,可根據需要擴展Docker配置或性能優化章節以達到1600字)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。