MySQL多实例配置方案
作者:大牙啊 发布时间:2024-01-14 12:55:49
标签: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
来源:http://blog.51cto.com/13520772/2095361
0
投稿
猜你喜欢
- 1、创建存储过程 create or replace procedure test(var_name_1 in type,var_name_
- 其实网上有很多关于python2.6.6 升级到python2.7的文章,但是我对比这些类似的文章升级之后,发现其中有错误的地方,于是决定还
- 多数情况下,mysql在刚刚安装时是不支持中文的,这是由于编码的问题我们可以通过修改配置文件,永久实现mysql对中文的识别首先我们要先将文
- OpenCV的imread不能读取中文路径问题import numpy as npimport cv2cv_img = cv2.imdeco
- 这个问题是py2和py3兼容性的问题在py2中,判断key是否属于dict的写法可以是:d={'name':'abc
- 有的时候取出全部数据库记录也许正好满足你的要求,不过,在大多数情况下我们通常只需得到部分记录。这样一来该如何设计查询呢?当然会更费点脑筋了,
- 从这节算是开始进入“正规”的机器学习了吧,之所以“正规”因为
- 1. raw,mhd 格式医学图像数据转换raw+mhd格式是常见的一种医学图像格式,每一个病人的数据包含一个mhd文件和一个同名的raw文
- 生成.bmp格式的文件.bmp格式的图片是未压缩的图片,相比于.raw格式,需要加上头文件。下面以大小为M*N的图片为例,说明头文件格式和内
- 方法组成模式方法里的所有语句都必须处在同一个归纳层次上无用的注释让代码自我表白标注为什么这样,而不是如何这样对方法表现进行描述等于重复表现这
- 详解python里使用正则表达式的分组命名方式分组匹配的模式,可以通过groups()来全部访问匹配的元组,也可以通过group()函数来按
- python提供了4种方式来满足进程间的数据通信1. 使用multiprocessing.Queue可以在进程间通信,但不能在Pool池创建
- 一、简介本章内容主要通过具体的简单示例来分析Vue3是如何实现响应式的。理解本章需要了解Vue3的响应式对象。只注重原理设计层面,细节不做太
- 本文实例讲述了Python3.4列表、数组操作。分享给大家供大家参考,具体如下:python列表,数组类型要相同,python不需要指定数据
- 文件拆分代码:#-*-encoding:utf-8-*-import osimport sysimport threadingdef get
- 动态加载JavaScript文件和CSS资源为Web前端开发提供了巨大的灵活性,同时也实现了lazy load和按需加载,相比XMLHttp
- 目录一、熟悉designer——设计界面的神器1.首先打开designer。2.创建窗口3.熟悉各部功能区域二、设计自己的第一个GUI。1.
- 本文实例讲述了Python多线程threading模块用法。分享给大家供大家参考,具体如下:多线程 - threadingpython的th
- pandas in 和 not in 的用法经常在处理数据中从一个总数据中清洗出数据, 但是有时候需要把没有处理的数据也统计出来.这时候就需
- Django的Form主要具有一下几大功能:生成HTML标签验证用户数据(显示错误信息)HTML Form提交保留上次提交数据初始化页面显示