mysql-standard-5.0.27-linux-i686-icc-glibc23.tar.gz (ICC 編譯,效能 +10~20%)# 1. 解壓並建立符號連結
cd /usr/local
tar zxvf mysql-standard-5.0.27-linux-i686-icc-glibc23.tar.gz
ln -s mysql-standard-5.0.27-linux-i686-icc-glibc23 mysql
cd mysql
# 2. 建立用戶/組
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
# 3. 初始化資料目錄 (5.0/5.1)
scripts/mysql_install_db --user=mysql
# 4. 權限修正
chown -R root .
chown -R mysql data
chgrp -R mysql .
# 5. 配置 my.cnf (關鍵參數)
cat > /etc/my.cnf <<'EOF'
[mysqld]
default-storage-engine = INNODB
default-character-set = utf8
skip-bdb
innodb_buffer_pool_size = 128M
key_buffer_size = 32M
sort_buffer_size = 2M
read_buffer_size = 2M
log-bin = mysql-bin
server-id = 1
EOF
# 6. 啟動
bin/mysqld_safe --user=mysql &
# 7. 設定 root 密碼
bin/mysqladmin -u root password 'StrongPass123'
# 8. 建立業務庫/帳號
bin/mysql -u root -p
CREATE DATABASE appdb DEFAULT CHARACTER SET utf8;
CREATE USER 'appuser'@'%' IDENTIFIED BY 'AppPass123';
GRANT ALL ON appdb.* TO 'appuser'@'%';
FLUSH PRIVILEGES;
# 9. 關閉測試
bin/mysqladmin -u root -p shutdown
mysqld_safe 加入 /etc/init.d/ 或 systemd unit 實現開機自啟。log-error、slow-query-log、expire-logs-days。mysqldump --single-transaction --master-data=2 + xtrabackup 物理備份。Prometheus + mysqld_exporter 或 Percona Monitoring and Management (PMM)。| 錯誤 | 原因 | 修正 |
|---|---|---|
| Can't create test file | data 目錄權限錯誤 | chown -R mysql:mysql data |
| Unknown collation utf8mb4_0900_ai_ci | 5.0/5.1 不支援 utf8mb4 新排序 | 用 utf8_general_ci 或升級 5.5+ |
| InnoDB: mmap failed | innodb_buffer_pool_size 過大超過實體記憶體 | 調整為實體記憶體 60~70% |
手動部署掌握「解壓→建用戶→初始化→權限→配置→啟動→設密→建庫」九步曲,配合 ICC 編譯版與關鍵參數預調,可快速交付高效能、安全的 MySQL 實例。