# Linux環境下如何安裝MySQL5.7.36數據庫
## 前言
MySQL作為最流行的開源關系型數據庫之一,被廣泛應用于各類業務場景。本文將詳細介紹在Linux環境下安裝MySQL 5.7.36的具體步驟,涵蓋從環境準備到配置優化的完整流程。文中示例以CentOS 7系統為基礎,其他Linux發行版可參考類似操作。
---
## 一、環境準備
### 1.1 系統要求
- 操作系統:CentOS 7/RHEL 7或Ubuntu 16.04+
- 內存:建議至少2GB
- 磁盤空間:5GB以上可用空間
- 用戶權限:root或具有sudo權限的用戶
### 1.2 依賴檢查
```bash
# 檢查系統版本
cat /etc/redhat-release
# 更新系統包
sudo yum update -y
# 安裝基礎依賴
sudo yum install -y wget libaio numactl
通過MySQL官網獲取特定版本:
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
# 校驗MD5值
md5sum mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
# 對比官方提供的校驗值
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
sudo tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
sudo ln -s /usr/local/mysql-5.7.36-linux-glibc2.12-x86_64 /usr/local/mysql
sudo mkdir -p /var/lib/mysql
sudo chown -R mysql:mysql /var/lib/mysql
# 初始化數據庫(重要!記錄輸出的臨時密碼)
sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/var/lib/mysql
sudo tee /etc/my.cnf <<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
[mysql]
socket=/var/lib/mysql/mysql.sock
EOF
# 創建systemd服務文件
sudo tee /etc/systemd/system/mysqld.service <<EOF
[Unit]
Description=MySQL Server
After=network.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
# 重載服務配置
sudo systemctl daemon-reload
sudo systemctl start mysqld
sudo systemctl enable mysqld
使用初始化時生成的臨時密碼登錄:
# 獲取臨時密碼(查看初始化時的輸出或錯誤日志)
grep 'temporary password' /var/log/mysqld.log
# 登錄并修改密碼
mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密碼';
sudo /usr/local/mysql/bin/mysql_secure_installation
按提示完成以下操作: 1. 設置root密碼強度 2. 移除匿名用戶 3. 禁止root遠程登錄 4. 移除測試數據庫 5. 重載權限表
修改/etc/my.cnf
添加:
[mysqld]
# 內存配置(根據服務器實際內存調整)
innodb_buffer_pool_size = 1G
innodb_log_file_size = 256M
max_connections = 200
# 字符集設置
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
sudo systemctl restart mysqld
systemctl status mysqld
# 輸出應顯示"active (running)"
mysql -uroot -p -e "SELECT VERSION();"
# 應返回:5.7.36
ls -l /var/lib/mysql # 數據文件
ls -l /usr/local/mysql # 安裝目錄
# 查看錯誤日志
tail -100 /var/log/mysqld.log
# 常見問題:
# 1. 權限問題:chown -R mysql:mysql /var/lib/mysql
# 2. 端口沖突:netstat -tulnp | grep 3306
skip-grant-tables
到my.cnf通過本文步驟,您已經完成了: - MySQL 5.7.36的二進制包安裝 - 系統服務配置 - 基礎安全設置 - 性能參數優化
建議后續操作: 1. 設置定期備份策略 2. 配置監控告警 3. 根據業務需求調整參數
注意:生產環境建議考慮主從復制、讀寫分離等高可用方案。
功能 | 命令 |
---|---|
啟動服務 | systemctl start mysqld |
停止服務 | systemctl stop mysqld |
查看狀態 | systemctl status mysqld |
錯誤日志 | tail -f /var/log/mysqld.log |
連接數據庫 | mysql -uroot -p |
”`
注:實際使用時請根據具體環境調整路徑和參數,文中涉及的密碼應替換為符合實際安全要求的復雜密碼。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。