MySQL多实例配置方案

1.1 什么是Mysql多实例?

简单的说,Mysql多实例就是在一台服务器上同时开启多个不同的服务端口(如 : 3306/3307/3308)同时运行多个Mysql服务器,这些服务进程通过不同的socket来监听不同的服务端口来提供服务

这些Mysql多实例共用一套Mysql安装程序,使用不同的my.cnf配置文件,启动程序,和数据文件,在提供服务时,多实例Mysql在逻辑上来看是各自独立的,他们根据配置文件对应设定值,获得服务器相应的资源

1.2 多实例配置思路:

1.      多套独立目录
2.      每个实例有独立的数据(初始化数据)
3.      多个端口
4.      多个socket
5.      多个启动程序
6.      多个日志文件

1.3 多实例配置过程:

1.3.1 创建独立目录:

mkdir -p /data/{3307,3308}
chown –R mysql.mysql /data

1.3.2 编写每个实例的配置文件:

[root@db01 ~]# cat /data/3307/my.cnf
[mysqld]
basedir=/application/mysql
datadir=/data/3307
socket=/data/3307/mysql.sock
log-error=/data/3307/mysql.log
log_bin=/data/3307/mysql-bin
binlog_format=row
skip_name_resolve=1
server_id=3307
port=3307

1.3.3 初始化数据:

./mysql_install_db  --defaults-file=/data/3307/my.cnf --basedir=/application/mysql --datadir=/data/3307 --user=mysql

1.3.4 启动实例:

sh mysqld_safe --defaults-file=/data/3307/my.cnf --pid-file=/data/3307/3307.pid  &

shell脚本管理多实例服务:

#!/bin/bash

. /etc/init.d/functions
. /etc/profile

Start='/application/mysql/bin/mysqld_safe --defaults-file=/data/3307/my.cnf --pid-file=/data/3307/3307.pid'
Stop='mysqladmin -uroot -S /data/3307/mysql.sock shutdown'
Port=`ss -tunlp|grep 3307|wc -l`

function START(){
 if [ $Port -ne 1 ];then
  $Start >/dev/null 2>&1 &
  sleep 3
  if [ $? -eq 0 ];then
   action 'MySQL 3307 Starting' /bin/true
  fi
 else
  action 'MySQL 3307 Already Exists' /bin/true
 fi
}
function STOP(){
 if [ $Port -ne 0 ];then
  $Stop
  if [ $? -eq 0 ];then
   action 'MySQL Stoping Successfuly' /bin/true
  fi
 else
  action 'MySQL already Stoped' /bin/true
 fi
}
function RESTART(){
 STOP
 sleep 1
 START
}
case $1 in
start)
 START
 ;;
stop)
 STOP
 ;;
restart)
 RESTART
 ;;
*)
 echo "Usage: $0 {start|stop|restart}"
 ;;
esac
(0)

相关推荐

  • Linux下安装Mysql多实例作为数据备份服务器实现多主到一从多实例的备份

    1.从MYSQL官方下载MYSQL的源码版本[一定要是源码版本] 2.按以下代码键入LINUX命令行 复制代码 代码如下: [注] 添加mysql组和用户 #groupadd mysql #useradd -g mysql mysql [注] 解包到/usr/local # tar -xzf mysql-standard-4.1.9-pc-linux-gnu-i686.tar.gz -C /usr/local [注] 建立软链接,方便操作(此处给此连接命名为mysql001,也可为其它的名字)

  • shell使用mysqld_multi自动做多实例从库脚本

    复制代码 代码如下: # cat doallslave.sh#!/bin/sh#code by scpman#mail:scpman@live.com#blog:http://www.scpman.com#name:"doallslave.sh"helpinfo(){echo -e '\t\thelp 查看帮助信息'echo -e '\t\t自动做allslave从库脚本使用帮助'echo -e '\t\tslavename 只能是xxx_xxx这种命令例如:zq2013_test1'

  • 基于mysql多实例安装的深入解析

    相信大多数人都遇到过多实例安装mysql吧,相信大多数人只要找到一份多实例安装的教程就会很容易搞定了,但是越是顺利的安装过程越让我们不安,为什么呢,当我们在按照教程一步一步来的时候,你知道每句话的意思的目的吗?出现错误以后的我们又该怎么办呢?现在我为大家展示我的安装过程,各种纠结,各种错误.首先说明一个场景:我的电脑是ubuntu系统,之前apt-get自动安装过mysql.这也是出现错误最多的原因之一.下面是我的安装过程,其中充斥着各种错误: 复制代码 代码如下: 6.mkdir mysql7

  • 快速实现MySQL的部署以及一机多实例部署

    MySQL有三个版本:二进制,源码包,RPM. 下面讲讲二进制包的安装过程 下载地址:http://dev.mysql.com/downloads/mysql/ 选择Linux-Generic 我这里选择的是mysql-5.6.28-linux-glibc2.5-x86_64.tar.gz 解压后,里面有个文件INSTALL-BINARY,其实给出了二进制包的部署过程 shell> groupadd mysql shell> useradd -r -g mysql -s /bin/false

  • 如何在Windows中运行多个MySQL实例详解

    前言 在Windows中可以从命令行为每个实例使用合适的操作参数来手动启动多个MySQL实例或者通过以Windows服务方式来安装多个服务器来运行. 1.在windows中MySQL的base目录中创建两个新实例的数据目录data3307,data3308 2.为每个新实例设置配置文件来指定相关选项 my3307.cnf文件内容如下: [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8mb4 [mysqld] # 设置3307端口 port

  • mysql使用mysqld_multi部署单机多实例的方法教程

    前言 大家应该都有所体会,随着硬件层面的发展,linux系统多核已经是普通趋势,而mysql是单进程多线程,所以先天上对多进程的利用不是很高,虽然5.6版本已经在这方面改进很多,但是也没有达到100%,所以为了充分的利用系统资源,mysql有自己的补充,那就是可以部署多实例,一个实例一个端口. mysqld_multi设计用于管理在同一台机器上运行的多个mysqld进程,这些进程使用不同的socket文件并监听在不同的端口上.mysqld_multi可以批量启动.关闭.或者报告这些mysqld进

  • CentOS6.5 上部署 MySQL5.7.17 二进制安装以及多实例配置

    1.建用户.下载.解压 groupadd mysql useradd -r -g mysql mysql wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz tar xvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz -C /usr/local/ ln -sv /usr/local/mysql-5.7.17-linux-gli

  • MySQL多实例配置方案

    1.1 什么是Mysql多实例? 简单的说,Mysql多实例就是在一台服务器上同时开启多个不同的服务端口(如 : 3306/3307/3308)同时运行多个Mysql服务器,这些服务进程通过不同的socket来监听不同的服务端口来提供服务 这些Mysql多实例共用一套Mysql安装程序,使用不同的my.cnf配置文件,启动程序,和数据文件,在提供服务时,多实例Mysql在逻辑上来看是各自独立的,他们根据配置文件对应设定值,获得服务器相应的资源 1.2 多实例配置思路: 1.      多套独立目

  • MySQL大内存配置方案 如my-medium.ini、my-huge.ini等

    MySql noinstall-5.1.xx-win32 配置(原创) 1.解压mysql-noinstall-5.1.xx-win32.zip 到你喜欢的目录,例如:d:\php\mysql 2.在根目录d:\php\mysql中有五个配置信息文件: my-small.ini (内存 <= 64M) my-medium.ini (内存 128M ) my-large.ini (内存 512M) my-huge.ini (内存 1G-2G) my-innodb-heavy-4G.ini (内存

  • Centos7系统下Mysql主从同步配置方案

    前言 最近在做项目高可用时,需要使用数据同步.由于只有双节点,且采用主主同步可能存在循环同步的风险,故综合考虑采用Mysql主从同步(Master-Slave同步). 可能没有接触过Mysql数据同步时,可能会觉得数据同步很难,但你按照如下操作一遍之后,会发现原来同步如此简单,毕竟我们只需要会配置,会排查问题,底层具体实现Mysql团队早帮忙实现了. 废话不多说,直入话题: (1)首先,保证有两台设备(主.从),分别在两台设备上安装Mysql数据库.安装完成之后, 使用mysql -u[数据库用

  • MySQL系列之二 多实例配置

    什么是MySQL多实例? 简单地说,MySQL多实例就是在一台服务器上同时开启多个不同的服务端口(如:3306,3307),同时运行多个MySQL服务进程,这些服务进程通过不同的socket监听不同的服务端口来提供服务. 这些MySQL多实例共用一套MySQL安装程序,使用不同的my.cnf(也可以相同)配置文件.启动程序(也可以相同)和数据文件.在提供服务时,多实例MySQL在逻辑上看来是各自独立的,它们根据配置文件的对应设定值,获得服务器相应数量的硬件资源. 打个比方吧,MySQL多实例就相

  • Centos中安装多个mysql数据的配置实例

    注:本文档做了两个MYSQL实例,多个实例方法以此类推 LINUX操作系统:centOS6.3 64bit(安装了系统默认开发包)数据库一:MYSQL版本:mysql-5.0.56PORT:3306系统目录:/usr/local/mysql3306数据库二:MYSQL版本:mysql-5.1.72PORT:3307系统目录:/usr/local/mysql3307 一.安装开发包(使用默认CENTOS更新源): 复制代码 代码如下: # yum -y install wget gcc-c++ n

  • 使用mysqld_multi实现单系统中配置多个MySQL服务器实例

    本文讲利用MySQL源码安装MySQL并用mysqld_multi配置多实例. 1.下载MySQL源码安装版本 到MySQL官网查找到相应版本下载,本文下载的是5.1版本 复制代码 代码如下: wget -c ftp://ftp.mirrorservice.org/sites/ftp.mysql.com/Downloads/MySQL-5.1/mysql-5.1.60.tar.gz 2.解压安装 复制代码 代码如下: tar -zxv -f mysql-5.1.60.tar.gz    ./co

  • MySQL数据库入门之多实例配置方法详解

    本文实例讲述了MySQL数据库入门之多实例配置方法.分享给大家供大家参考,具体如下: 前面介绍了相关的基础命令操作:MySQL数据库基础篇之入门基础命令 所有的操作都是基于单实例的,mysql多实例在实际生产环境也是非常实用的,因为必须要掌握. 1.什么是多实例 多实例就是一台服务器上开启多个不同的服务端口(默认3306),运行多个mysql的服务进程,这此服务进程通过不同的socket监听不同的服务端口来提供各在的服务,所有实例之间共同使用一套MYSQL的安装程序,但各自使用不同的配置文件.启

  • MySQL多实例安装开机自启动服务配置过程

    1.mysql多实例 mysql多实例是指在一台或多台机器上跑多个mysql数据库,大大节省开销的费用,方便管理数据内容. 2.环境设备 系统版本 安装方式以及版本 centos8 mysql5.7(二进制安装) 3.创建数据目录 安装包添加环境变量以及属主等步骤省略,各路神仙都会 [root@clq ~]# mkdir /opt/data/{3306,3307,3308} -p [root@clq ~]# chown mysql.mysql /opt/data/* 4.分别初始化数据库 [ro

  • MySQL多实例的配置应用实例场景

    目录 MySQL多实例 多实例概述 什么是多实例: 为什么要配置多实例 多实例的应用场景 配置多实例 MySQL多实例 多实例概述 什么是多实例: 在一台服务器上,运行多个数据库服务,这些服务进程通过不同的socket监听不同的服务端口来提供各自的服务: 为什么要配置多实例 节约运维成本 提高硬件利用率 多实例的应用场景 资金比较紧张的公司: 并发访问不是特别大的业务: 配置多实例 1.安装软件 具体操作: 解压软件.修改目录名.修改PATH路径 如果在已有数据库服务的机器上运行多实例,先查看数

随机推荐