MySQL是一個流行的開源關系型數據庫管理系統。經常有人需要在同一服務器上安裝多個版本的MySQL,本文將介紹如何在同一服務器上同時安裝多個版本的MySQL。
在安裝多個版本的MySQL之前,需要確定當前系統是否已經安裝了MySQL。可以在命令行終端中使用以下命令來驗證:
mysql -u root -p
如果出現下面的提示:
-bash: mysql: command not found
那么說明該服務器上沒有安裝MySQL,并可以繼續安裝多個版本的MySQL。
以下是安裝多個版本的MySQL的步驟:
- 下載MySQL源碼包
- 解壓MySQL源碼包
- 編譯并安裝MySQL
- 創建MySQL配置文件
- 啟動MySQL
可以從MySQL官網下載源碼包,地址為:https://dev.mysql.com/downloads/mysql/
tar zxvf mysql-5.7.24.tar.gz tar zxvf mysql-8.0.12.tar.gz
在解壓后的目錄中執行以下命令:
cd mysql-5.7.24 ./configure --prefix=/usr/local/mysql-5.7\ --localstatedir=/usr/local/mysql-5.7/data\ --with-mysqld-user=mysql\ --with-readline\ --with-ssl\ --without-docs\ --without-test\ --without-bench\ --disable-shared make && make install
以上命令將MySQL安裝在/usr/local/mysql-5.7目錄下。
再執行以下命令安裝另一個版本的MySQL:
cd ../mysql-8.0.12 ./configure --prefix=/usr/local/mysql-8.0\ --localstatedir=/usr/local/mysql-8.0/data\ --with-mysqld-user=mysql\ --with-readline\ --with-ssl\ --without-docs\ --without-test\ --without-bench\ --disable-shared make && make install
以上命令將MySQL安裝在/usr/local/mysql-8.0目錄下。
在/usr/local/mysql-5.7目錄下創建my.cnf文件:
[mysql] port = 3306 socket = /tmp/mysql.sock datadir = /usr/local/mysql-5.7/data [mysqld] port = 3306 socket = /tmp/mysql.sock datadir = /usr/local/mysql-5.7/data
在/usr/local/mysql-8.0目錄下創建my.cnf文件:
[mysql] port = 3307 socket = /tmp/mysql-8.0.sock datadir = /usr/local/mysql-8.0/data [mysqld] port = 3307 socket = /tmp/mysql-8.0.sock datadir = /usr/local/mysql-8.0/data
可以使用以下命令來啟動MySQL:
/usr/local/mysql-5.7/bin/mysqld --defaults-file=/usr/local/mysql-5.7/my.cnf & /usr/local/mysql-8.0/bin/mysqld --defaults-file=/usr/local/mysql-8.0/my.cnf &
以上命令將分別啟動兩個版本的MySQL。