如何在一台服務器上安裝兩個mysql或者更多


如何在一台服務器上安裝兩個mysql

1       前言

    上篇寫了在一台機器上源碼編譯安裝一個mysql,那么如何在一台機器上源碼編譯安裝兩個mysql或者更多呢?

2       環境

mysql軟件包:

mysql-5.6.31.tar

mysql-5.5.32.tar

操作系統環境:

CentOS release 6.8 (Final)

3       系統規模

/mysqlsoft

用來存放mysql的各個程序

 

/mysqlsoft/mysql1

用來存放mysql-5.5.32.tar

的安裝程序

 

/mysqlsoft/mysql2

用來存放mysql-5.6.31.tar

的安裝程序

 

/mysqlsoft/mysql1/mysql.sock

 

 

/mysqlsoft/mysql2/mysql.sock

 

 

/data

用來存放數據

 

/data/mysql1

用來存放mysql-5.5.32.的數據

 

/data/mysql2

用來存放mysql-5.6.31.的數據

 

4       添加用戶和目錄

添加用戶

groupadd mysql

useradd mysql -g mysql

 

創建目錄

mkdir /mysqlsoft

mkdir mysqlsoft/mysql1/ -pv

mkdir mysqlsoft/mysql2/ -pv

 

創建數據目錄

mkdir /data

mkdir /data/mysql1/ -pv

mkdir /data/mysql2/ -pv

更改權限:

chown -R mysql:mysql mysqlsoft/mysql1

chown -R mysql:mysql mysqlsoft/mysql2

chown -R mysql:mysql /data/mysql1

chown -R mysql:mysql /data/mysql2

5       編譯mysql並安裝

在源碼編譯安裝前我們需要安裝一下工具

cmake,make,gcc,Perl,

 

yum install cmake,make,gcc,Perl -y

5.1     mysql-5.5.32

cd mysqlsoft/mysql1/

tar -zxvf mysql-5.5.32.tar.gz

mkdir bootstarp

我們把源碼編譯在bootstarp目錄里

cmake ..  -DCMAKE_INSTALL_PREFIX=/mysqlsoft/mysql1

-DMYSQL_DATADIR=/data/mysql1

-DSYSCONFDIR=/mysqlsoft/mysql1

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1

-DMYSQL_TCP_PORT=3301

-DMYSQL_UNIX_ADDR=/mysqlsoft/mysql1/mysql.sock

編譯完后,我們需要make然后make install

5.2     安裝后的工作

具體參考: http://www.cnblogs.com/karmapeng/p/5844875.html

cd /mysqlsoft/mysql1

cp ./support-files/my-default.cnf my.cnf

編輯my.cnf添加配置項

chown  -R mysql .

chgrp  -R mysql .

初始化mysql:

scripts/mysql_install_db --user=mysql

更改mysql數據目錄的權限

 

5.3     mysql-5.6.31

cd /mysqlsoft/mysql2

tar -zxvf mysql-5.6.31.tar.gz

mkdir bootstarp

我們把源碼編譯在bootstarp目錄里

cmake ..  -DCMAKE_INSTALL_PREFIX=/mysqlsoft/mysql2

-DMYSQL_DATADIR=/data/mysql2

-DSYSCONFDIR=/mysqlsoft/mysql2

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1

-DMYSQL_TCP_PORT=3302

-DMYSQL_UNIX_ADDR=/mysqlsoft/mysql2/mysql.sock

編譯完后,我們需要make然后make install

5.4     安裝后的工作

具體參考: http://www.cnblogs.com/karmapeng/p/5844875.html

cd /mysqlsoft/mysql2

cp ./support-files/my-default.cnf my.cnf

編輯my.cnf添加配置項

chown  -R mysql .

chgrp  -R mysql .

初始化mysql:

scripts/mysql_install_db --user=mysql

更改mysql數據目錄的權限

6       啟動mysql

6.1     啟動mysql-5.5.32

cd /mysqlsoft/mysql1

 

bin/mysqld_safe --user=mysql &

6.2     啟動mysql-5.6.31

cd /mysqlsoft/mysql2

bin/mysqld_safe --user=mysql &

6.3     查看mysql的啟動情況

[root@mysql mysql2]# ps -ef | grep mysql

root      6329  2853  0 13:19 pts/0    00:00:00 /bin/sh bin/mysqld_safe --user=mysql

mysql     6607  6329  0 13:19 pts/0    00:00:00 /mysqlsoft/mysql1/bin/mysqld --basedir=/mysqlsoft/mysql1/ --datadir=/data/mysql1/ --plugin-dir=/mysqlsoft/mysql1//lib/plugin --user=mysql --log-error=/data/mysql1//mysql.localdomain.err --pid-file=/data/mysql1//mysql.localdomain.pid --socket=/mysqlsoft/mysql1/mysql.sock --port=3301

root      6630  2853  0 13:20 pts/0    00:00:00 /bin/sh bin/mysqld_safe --user=mysql

mysql     6774  6630  0 13:20 pts/0    00:00:00 /mysqlsoft/mysql2/bin/mysqld --basedir=/mysqlsoft/mysql2 --datadir=/data/mysql2 --plugin-dir=/mysqlsoft/mysql2/lib/plugin --user=mysql --log-error=/data/mysql2/mysql.localdomain.err --pid-file=/data/mysql2/mysql.localdomain.pid --socket=/mysqlsoft/mysql2/mysql.sock --port=3302

 

6.4     刪除mysql里的其他項

1.改root用戶更改密碼

2.刪除匿名用戶

3. 刪除mysql.db里的一些行,這些行定義了任何用戶都可以訪問test數據庫,或者以test_開頭的數據庫。

DELETE FROM mysql.db WHERE Db LIKE 'test%';

具體請參考

http://www.cnblogs.com/karmapeng/p/5844875.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM