在一台Linux服务器上安装多个MySQL实例(一)--使用mysqld_multi方式

本文介绍了在Linux服务器上通过mysqld_multi安装和管理多个MySQL实例的方法,包括环境准备、配置文件创建、数据库初始化、用户与权限设置、实例启动与访问,以及关闭实例的策略。
摘要由CSDN通过智能技术生成

image

 

(一)MySQL多实例概述

实例是进程与内存的一个概述,所谓MySQL多实例,就是在服务器上启动多个相同的MySQL进程,运行在不同的端口(如3306,3307,3308),通过不同的端口对外提供服务。

由于MySQL在一个实例下面可以创建多个数据库,所以通常在一台服务器上只要安装一个MySQL实例即可满足使用。但在实际使用中,因为服务器硬件资源充足,或者业务需要(比如在一台服务器上创建开发数据库和测试数据库),往往会在一台服务器上创建多个实例。

 

(二)MySQL部署多实例的方法

MySQL多实例部署主要有以下两种方式:

  • 使用官方自带的mysqld_multi来配置管理,特点是使用同一份MySQL配置文件,这种方式属于集中式管理,管理起来较为方便;
  • 使用单独的MySQL配置文件来单独配置实例,这种方式逻辑简单,数据库之间没有关联。

本文将对第一种方式进行环境搭建学习。

 

(三)实验环境

操作系统   :CentOS Linux release 7.4.1708 (Core)

数据库版本:5.7.24-log

预计划安装4个MySQL实例,规划信息为:

实例1 实例2 实例3 实例4

basedir=/usr/local/mysql

datadir=/mysql/3306/data

port=3306

socket=/tmp/mysql_3306.sock

basedir=/usr/local/mysql

datadir=/mysql/3307/data

port=3307

socket=/tmp/mysql_3307.sock

basedir=/usr/local/mysql

datadir=/mysql/3308/data

port=3308

socket=/tmp/mysql_3308.sock

basedir=/usr/local/mysql

datadir=/mysql/3309/data

port=3309

socket=/tmp/mysql_3309.sock

 

(四)实验过程

(4.1)在安装MySQL之前,需要卸载服务器自带的MySQL包和MySQL数据库分支mariadb的包

[root@masterdb ~]# rpm -qa|grep mysql
[root@masterdb ~]# rpm -qa |grep mariadb
mariadb-libs-5.5.56-2.el7.x86_64

[root@masterdb ~]# rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps

 

(4.2)依赖包安装

MySQL对libaio 库有依赖性。如果未在本地安装该库,则数据目录初始化和随后的服务器启动步骤将失败 、

# install library

[root@mysql mysql]# yum install libaio

对于MySQL 5.7.19和更高版本:通用Linux版本中增加了对非统一内存访问(NUMA)的支持,该版本现在对libnuma库具有依赖性 。

# install library
 
[root@mysql mysql]# yum install libnuma

 

(4.3)创建用户和用户组

[root@masterdb ~]# groupadd mysql
[root@masterdb ~]# useradd -r -g mysql -s /bin/false mysql

 

(4.4)解压安装包

[root@masterdb ~]# cd /usr/local/
[root@masterdb local]# tar xzvf /root/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

# 修改解压文件名,与前面定义的basedir相同
[root@masterdb local]# mv mysql-5.7.24-linux-glibc2.12-x86_64/ mysql

最终解压结果如下:

[root@masterdb mysql]# ls -l
 total 36
 drwxr-xr-x  2 root root   4096 Mar 28 13:48 bin
 -rw-r--r--  1 7161 31415 17987 Oct  4  2018 COPYING
 drwxr-xr-x  2 root root     55 Mar 28 13:48 docs
 drwxr-xr-x  3 root root   4096 Mar 28 13:48 include
 drwxr-xr-x  5 root root    230 Mar 28 13:48 lib
 drwxr-xr-x  4 root root     30 Mar 28 13:48 man
 -rw-r--r--  1 7161 31415  2478 Oct  4  2018 README
 drwxr-xr-x 28 root root   4096 Mar 28 13:48 share
 drwxr-xr-x  2 root root     90 Mar 28 13:48 support-files

 

(4.5)创建数据文件存放路径

[root@masterdb mysql]# mkdir
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值