在一台服务器上安装两个或多个mysql的实现步骤

时间:2022-09-24 07:46:24

如何在一台服务器上安装两个或者更多个的mysql呢?下面是详细的操作步骤,一起来学习学习吧。

一、环境

mysql软件包:

     mysql-5.6.31.tar

     mysql-5.5.32.tar

操作系统环境:

     CentOS release 6.8 (Final)

二、系统规模

/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.的数据

三、添加用户和目录

添加用户

?
1
2
3
groupadd mysql
 
useradd mysql -g mysql

创建目录

?
1
2
3
4
5
mkdir /mysqlsoft
 
mkdir mysqlsoft/mysql1/ -pv
 
mkdir mysqlsoft/mysql2/ -pv

创建数据目录

?
1
2
3
4
5
mkdir /data
 
mkdir /data/mysql1/ -pv
 
mkdir /data/mysql2/ -pv

更改权限:

?
1
2
3
4
5
6
7
chown -R mysql:mysql mysqlsoft/mysql1
 
chown -R mysql:mysql mysqlsoft/mysql2
 
chown -R mysql:mysql /data/mysql1
 
chown -R mysql:mysql /data/mysql2

四、编译mysql并安装

在源码编译安装前我们需要安装一下工具

?
1
2
3
cmake,make,gcc,Perl,
 
yum install cmake,make,gcc,Perl -y

4.1     mysql-5.5.32

?
1
2
3
4
5
cd mysqlsoft/mysql1/
 
tar -zxvf mysql-5.5.32.tar.gz
 
mkdir bootstarp

我们把源码编译在bootstarp目录里

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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

4.2     安装后的工作

?
1
2
3
cd /mysqlsoft/mysql1
 
cp ./support-files/my-default.cnf my.cnf

编辑my.cnf添加配置项

?
1
2
3
chown -R mysql .
 
chgrp -R mysql .

初始化mysql:

?
1
scripts/mysql_install_db –user=mysql

更改mysql数据目录的权限 

4.3     mysql-5.6.31

?
1
2
3
4
5
cd /mysqlsoft/mysql2
 
tar -zxvf mysql-5.6.31.tar.gz
 
mkdir bootstarp

我们把源码编译在bootstarp目录里

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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

4.4     安装后的工作

?
1
2
3
cd /mysqlsoft/mysql2
 
cp ./support-files/my-default.cnf my.cnf

编辑my.cnf添加配置项

?
1
2
3
chown -R mysql .
 
chgrp -R mysql .

初始化mysql:

?
1
scripts/mysql_install_db –user=mysql

更改mysql数据目录的权限

五、启动mysql

5.1     启动mysql-5.5.32

?
1
2
3
cd /mysqlsoft/mysql1
 
bin/mysqld_safe –user=mysql &

5.2     启动mysql-5.6.31

?
1
2
3
cd /mysqlsoft/mysql2
 
bin/mysqld_safe –user=mysql &

5.3     查看mysql的启动情况

?
1
2
3
4
5
6
7
8
9
[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

5.4     删除mysql里的其他项

     1.改root用户更改密码

     2.删除匿名用户

     3. 删除mysql.db里的一些行,这些行定义了任何用户都可以访问test数据库,或者以test_开头的数据库。

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

总结

以上就是这篇文章的全部内容,希望对大家的学习和工作能带来一定的帮助。

原文链接:http://www.cnblogs.com/karmapeng/p/5844875.html