MariaDB 是 MySQL 的替代產品, 也是 RHEL 7 及 CentOS 7 的預設資料庫系統。有時需要在 MariaDB 及 MySQL 之間做測試, 或者在不同版本 MySQL 之間做測試, 同時安裝及運行 MariaDB 及 MySQL 會很方便, 以下紀錄一下在主機內同時安裝 MariaDB 及 MySQL 運行, 當然如果有需要, 也可以按此方法安裝 2 個以上的 MySQL, 而方法同樣適用於 Percona Server。
首先用一般的方法安裝 MariaDB, 可以參考以下文章:
Redhat / Centos 7 安裝 MariaDB Server
Debian / Ubuntu 安裝 MariaDB Server
然後開始安裝 MySQL Server:
1. 建立 MySQL 資料庫目錄:
# chown mysql.mysql /var/lib/mysql2
2. 建立 my2.cnf
3. 將 my2.cnf 的設定修改, 以免與 MariaDB 發生衝突, 最起碼要修改資料庫目錄, socket, port, pid:
datadir=/var/lib/mysql2
socket=/var/lib/mysql/mysql2.sock
port=3307
[mysqld_safe]
log-error=/var/log/mysqld2.log
pid-file=/var/run/mysqld/mysqld2.pid
4. 初始資料庫安裝:
5. 安裝好 MySQL Server 後, 現在啟動 MySQL:
啟動後用 netstat 檢查一下埠號 3307 (上面的 my2.cnf 設定使用 3307 埠號) 是否被 MySQL 使用:
如果沒有問題, 可以使用 mysql client 嘗試連接第二個 MySQL:
6. 停止第二個 MySQL 用以下指令:
7. 如果可以正常啟動及停止第二個 MySQL, 可以建立一個簡單的 MySQL 啟動 shell script,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#!/bin/sh case "$1" in start) mysqld_safe --defaults-file=/etc/my2.cnf & ;; stop) mysqladmin -S /var/lib/mysql/mysql2.sock shutdown -p ;; restart) mysqladmin -S /var/lib/mysql/mysql2.sock shutdown -p mysqld_safe --defaults-file=/etc/my2.cnf & ;; *) echo "Usage: mysqld2 [start|stop|restart]" esac |