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

Linux MySQL 源碼編譯安裝全流程:從群組用戶到 my.cnf 優化、開機自啟

     編輯:MySQL 資料庫相關知識

以 MySQL 5.0.45 為例,通用於 5.x/8.x 源碼安裝,關鍵在 configure 參數與 my.cnf 微調。

1. 環境準備

yum -y install gcc gcc-c++ ncurses-devel cmake bison perl
groupadd mysql
useradd -r -g mysql -s /sbin/nologin mysql

2. 解壓配置編譯

tar -zxvf mysql-5.0.45.tar.gz
cd mysql-5.0.45
./configure \
  --prefix=/usr/local/mysql \
  --with-charset=utf8 \
  --with-collation=utf8_general_ci \
  --with-extra-charsets=latin1 \
  --with-plugins=innobase,myisam,partition \
  --enable-thread-safe-client
make && make install

MySQL 5.7+ 改用 cmake . -DCMAKE_INSTALL_PREFIX=... -DDEFAULT_CHARSET=utf8mb4 ...。

3. 初始化與權限

cp support-files/my-medium.cnf /etc/my.cnf
# 編輯 /etc/my.cnf 註釋 log-bin=mysql-bin(非主庫不需 binlog)
cd /usr/local/mysql
bin/mysql_install_db --user=mysql
chown -R root .
chown -R mysql data
chgrp -R mysql .

4. 啟動與自啟

bin/mysqld_safe --user=mysql &
# 加入開機自啟
echo "/usr/local/mysql/bin/mysqld_safe --user=mysql &" >> /etc/rc.local
chmod +x /etc/rc.local

5. 核心 my.cnf 優化片段

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port=3306
socket=/tmp/mysql.sock
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
skip-name-resolve
max_connections=1000
innodb_buffer_pool_size=1G
innodb_log_file_size=256M
innodb_flush_log_at_trx_commit=2

6. 常用維護命令

操作命令
登入mysql -uroot -p
改密mysqladmin -uroot -p'old' password 'new'
備份全庫mysqldump -uroot -p --all-databases > /backup/all.sql
備份單庫mysqldump -uroot -p db_name > /backup/db.sql
恢復mysql -uroot -p db_name < /backup/db.sql

驗證安裝

mysql -uroot -p -e "SHOW VARIABLES LIKE 'version';"
mysql -uroot -p -e "SHOW ENGINES;"
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved