首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Linux 環境 MySQL 5.7.13 兩種安裝模式完整教程(二進制包與源碼編譯)

     編輯:MySQL 資料庫相關知識

方案一:官方二進制包部署(推薦生產)

目錄規劃

用途路徑
安裝包下載/data/software
程式安裝/usr/local/mysql
資料目錄/data/mysql
日誌目錄/data/log/mysql

核心步驟

# 1. 下載
cd /data/software
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz

# 2. 解壓改名
tar -xzf mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz -C /usr/local/
mv /usr/local/mysql-5.7.13-linux-glibc2.5-x86_64 /usr/local/mysql

# 3. 建立用戶與目錄權限
useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/mysql
mkdir -p /data/mysql
chown -R mysql:mysql /usr/local/mysql /data/mysql

# 4. 初始化資料目錄(生成臨時 root 密碼)
cd /usr/local/mysql
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
# 記錄輸出的臨時密碼,如:YLi>7ecpe;YP

# 5. SSL/RSA 憑證生成
bin/mysql_ssl_rsa_setup --datadir=/data/mysql

# 6. 配置檔與啟動腳本
cp my-default.cnf /etc/my.cnf
cp mysql.server /etc/init.d/mysql
# 編輯 /etc/my.cnf 設定 basedir, datadir, port, socket, log-error 等
# 編輯 /etc/init.d/mysql 修正 basedir/datadir 路徑

# 7. 啟動並修改密碼
bin/mysqld_safe --user=mysql &
bin/mysql -u root -p  # 輸入臨時密碼
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'A123456';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'A123456';
mysql> FLUSH PRIVILEGES;

# 8. 環境變數與開機自啟
echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile
source /etc/profile
chmod 755 /etc/init.d/mysql
chkconfig --add mysql
chkconfig --level 345 mysql on

方案二:源碼編譯安裝(需自訂功能時)

前置編譯工具

# cmake 3.6+
tar -zxvf cmake-3.6.0.tar.gz && cd cmake-3.6.0 && ./bootstrap && make && make install

# bison 3.0.4+
tar -zxvf bison-3.0.4.tar.gz && cd bison-3.0.4 && ./configure && make && make install

編譯參數(含 Boost 自動下載)

cd /usr/local/src/mysql-5.7.13
cmake \
  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
  -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
  -DDEFAULT_CHARSET=gbk \
  -DDEFAULT_COLLATION=gbk_chinese_ci \
  -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
  -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
  -DMYSQL_DATADIR=/data/mysqldb \
  -DMYSQL_TCP_PORT=3306 \
  -DENABLE_DOWNLOADS=1 \
  -DDOWNLOAD_BOOST=1 \
  -DWITH_BOOST=/usr/local/boost

# 缺 ncurses-devel 會報錯:yum -y install ncurses-devel
make && make install

後續初始化同方案一

同樣執行 mysqld --initialize、配置 my.cnf、啟動服務、修改密碼。

關鍵差異對照

維度二進制包源碼編譯
部署速度分鐘級十分鐘~半小時
字符集預設utf8可指定 gbk/utf8mb4
功能裁剪不可可禁用無用引擎/功能
升級維護替換二進制檔需重新編譯
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved