本文參考: Compile Percona Server for MySQL 8.0 from source
首先起始一台 Debian Linux 12 Bookworm 虛擬機, 預先安裝編譯 MySQL 需要的套件
apt-get install build-essential cmake curl git ncurses-dev libaio-dev libbison-dev systemtap-sdt-dev
取得 Percona Server for MySQL 5.5 原始碼檔案
git clone https://github.com/percona/percona-server.git
過程有些冗長, 等待下載
進入下載目錄
cd percona-server
切換到 5.5 版本
git checkout 5.5
git submodule init
git submodule update
建構軟體系統
cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_CONFIG=mysql_release -DFEATURE_SET=community -DIGNORE_AIO_CHECK=true
開始編譯與安裝
make
make install
這步驟也需要等待, 最後 MySQL Server 軟體會安裝到 /usr/local/mysql/ 目錄之下
建立 mysql 帳號與群組
groupadd mysql
useradd -g mysql -d /usr/local/mysql mysql
chown -R mysql:mysql /usr/local/mysql
建立存放資料庫檔案目錄
mkdir /var/lib/mysql
chown -R mysql:mysql /var/lib/mysql
建立 socket 檔案目錄
mkdir /run/mysqld
加入 MySQL Server 與工具程式到 PATH 變數
export PATH="$PATH:/usr/local/mysql/bin"
source ~/.profile
source ~/.bashrc
編輯 my.cnf
nano /etc/my.cnf
貼上以下內容
[mysqld]
datadir=/var/lib/mysql
socket=/run/mysqld/mysql.sock
symbolic-links=0
collation-server=utf8_unicode_ci
character-set-server=utf8
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/run/mysqld/mysqld.pid
[client]
socket=/run/mysqld/mysql.sock
變更 socket 檔案權限
chown -R mysql:root /run/mysqld
初始化資料庫檔案目錄
cd /usr/local/mysql/scripts
./mysql_install_db --user=mysql --datadir=/var/lib/mysql -basedir=/usr/local/mysql
更新權限
chown -R mysql:mysql /var/lib/mysql
可以看到 /var/lib/mysql 目錄已經安裝好MySQL 伺服器需要的資料表
複製啟動程式
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
測試啟動
/etc/init.d/mysqld start
可以用更簡單的方式啟動/重啟/關閉 MySQL 伺服器
systemctl daemon-reload
service mysql restart
用 MySQL client 程式進入伺服器, 並對權限加上密碼(依照您的需求)
mysql -u root
請記得更新 root 帳號的密碼
SET PASSWORD = PASSWORD('mypassword');
FLUSH PRIVILEGES;
以上是 Percona Server for MySQL 5.5 編譯範例, 謝謝收看
