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

 更新时间:2016年09月07日 15:04:06   投稿:daisy  
这篇文章给大家介绍如何在一台服务器上安装两个或多个mysql的实现步骤,有需要的朋友们可以参考学习,下面跟着小编一起来看看吧。

如何在一台服务器上安装两个或者更多个的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.的数据

三、添加用户和目录

添加用户

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

四、编译mysql并安装

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

cmake,make,gcc,Perl, 

yum install cmake,make,gcc,Perl -y

4.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

4.2     安装后的工作

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数据目录的权限 

4.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

4.4     安装后的工作

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数据目录的权限

五、启动mysql

5.1     启动mysql-5.5.32

cd /mysqlsoft/mysql1

bin/mysqld_safe –user=mysql &

5.2     启动mysql-5.6.31

cd /mysqlsoft/mysql2

bin/mysqld_safe –user=mysql &

5.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

5.4     删除mysql里的其他项

     1.改root用户更改密码

     2.删除匿名用户

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

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

总结

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

相关文章

  • MySQL利用AES_ENCRYPT()与AES_DECRYPT()加解密的正确方法示例

    MySQL利用AES_ENCRYPT()与AES_DECRYPT()加解密的正确方法示例

    MySQL中AES_ENCRYPT('密码','钥匙')函数可以对字段值做加密处理,AES_DECRYPT(表的字段名字,'钥匙')函数解密处理,下面这篇文章主要给大家介绍了关于MySQL利用AES_ENCRYPT()与AES_DECRYPT()加解密的正确方法,文中给出了详细的示例代码,需要的朋友可以参考下。
    2017-08-08
  • MySQL中REPLACE INTO和INSERT INTO的区别分析

    MySQL中REPLACE INTO和INSERT INTO的区别分析

    REPLACE的运行与INSERT很相似。只有一点例外,假如表中的一个旧记录与一个用于PRIMARY KEY或一个UNIQUE索引的新记录具有相同的值,则在新记录被插入之前,旧记录被删除。
    2011-07-07
  • 详解数据库多表连接查询的实现方法

    详解数据库多表连接查询的实现方法

    这篇文章主要介绍了详解数据库多表连接查询的实现方法的相关资料,希望通过本文大家能够掌握数据库多表查询的方法,需要的朋友可以参考下
    2017-09-09
  • 随机生成八位优惠码并保存至Mysql数据库

    随机生成八位优惠码并保存至Mysql数据库

    这篇文章主要介绍了随机生成八位优惠码并保存至Mysql数据库的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-02-02
  • Mysql索引类型与基本用法实例分析

    Mysql索引类型与基本用法实例分析

    这篇文章主要介绍了Mysql索引类型与基本用法,结合实例形式分析了Mysql索引类型中普通索引、唯一索引、主键索引、组合索引、全文索引基本概念、原理与使用方法,需要的朋友可以参考下
    2020-06-06
  • MySQL数据库设计之利用Python操作Schema方法详解

    MySQL数据库设计之利用Python操作Schema方法详解

    这篇文章主要介绍了MySQL数据库设计之利用Python操作Schema方法详解,还是比较不错的,这里分享给大家,供需要的朋友参考。
    2017-11-11
  • MySQL8新特性:自增主键的持久化详解

    MySQL8新特性:自增主键的持久化详解

    MySQL8.0 GA版本发布了,展现了众多新特性,下面这篇文章主要给大家介绍了关于MySQL8新特性:自增主键的持久化的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-07-07
  • MySQL报1366错误的原因及解决

    MySQL报1366错误的原因及解决

    SQL Error1366是一个常见的 MySQL 错误,主要成因是数据类型不匹配或数据超出了范围,本文主要介绍了MySQL报1366错误的原因及解决,感兴趣的可以了解一下
    2024-02-02
  • MySQL大表数据的分区与分库分表的实现

    MySQL大表数据的分区与分库分表的实现

    数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-03-03
  • 如何彻底删除mysql服务(清理注册表)详解

    如何彻底删除mysql服务(清理注册表)详解

    这篇文章主要给大家介绍了关于如何彻底删除mysql服务(清理注册表)的相关资料,文中通过图文介绍的非常详细,对大家的学习或者使用mysql具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03

最新评论