MySQL 5.1.63 单机配置多实例(简单配置)
需求:
在一台服务器上通过源码编译安装一个版本为5.1.63版本MySQL数据库;
方案:
将所有配置文件与数据等均存放在/home/zhaoshuangshuang下。
在同一个MySQL中运行两个实例,一个绑定在端口3306,另一个绑定在端口3307。
其中,绑定3306端口的实例,数据存放在/home/zhaoshuangshuang/mysql/3306下;
绑定端口3307的实例,数据存放在/home/zhaoshuangshuang/mysql/3307下。
两个实例的存储引擎及字符集都按默认;
两个实例均采用相同的性能优化配置参数;
在编译安装时,将数据库的配置文件my.cnf以及数据目录等均指向到/home/zhaoshuangshuang/mysql目录;
通过mysqld_multi的方式来管理两个不同的实例,采用相同的配置文件共享性能优化配置参数;
在同一个配置文件中,利用[mysqld1]与[mysqld2]标签实现不同实例的差异化配置;
实施步骤: 1、编译安装MySQL数据库
我测试用的服务器已经安装过MySQL用户和用户组,分别是mysql。如果没有,请先创建用户和用户组。
$ tar -zxvf mysql-5.1.63.tar.gz
$ cd mysql-5.1.63
$ make
$ make install
这步执行完毕,就在/home/zhaoshuangshuang/mysql下,MySQL已经编译安装完成。
2、配置my.cnf以支持多实例
创建几个需要的目录: mkdir etc tmp run log binlogs 3306 3307
创建my.cnf配置文件:
$ vi my.cnf
[mysqld_multi]
mysqld = /home/zhaoshuangshuang/mysql/bin/mysqld_safe
mysqladmin = /home/zhaoshuangshuang/mysql/bin/mysqladmin
log = /home/zhaoshuangshuang/mysql/log/mysqld_multi.log
user = root
[mysqld1]
socket = /home/zhaoshuangshuang/mysql/run/mysqld.sock
port = 3306
pid-file = /home/zhaoshuangshuang/mysql/run/mysqld.pid
datadir = /home/zhaoshuangshuang/mysql/3306
[mysqld2]
socket = /home/zhaoshuangshuang/mysql/run/mysqld.sock2
port = 3307
pid-file = /home/zhaoshuangshuang/mysql/run/mysqld.pid2
datadir = /home/zhaoshuangshuang/mysql/3307
log-bin = /home/zhaoshuangshuang/mysql/binlogs/bin-log-mysqld2
log-bin-index = /home/zhaoshuangshuang/mysql/binlogs/bin-log-mysqld2.index
max_binlog_size = 1024m
[mysqld]
basedir = /home/zhaoshuangshuang/mysql
tmpdir = /home/zhaoshuangshuang/mysql/tmp
socket = /home/zhaoshuangshuang/mysql/run/mysqld.sock
port = 3306
pid-file = /home/zhaoshuangshuang/mysql/run/mysqld.pid
datadir = /home/zhaoshuangshuang/mysql/3306
max_connections = 200
3、初始化数据库
$ cd /home/zhaoshuangshuang/mysql-5.1.63
$ script/mysql_install_db --basedir=/home/zhaoshuangshuang/mysql --user=root --datadir=/home/zhaoshuangshuang/mysql/3306
$ script/mysql_install_db --basedir=/home/zhaoshuangshuang/mysql --user=root --datadir=/home/zhaoshuangshuang/mysql/3307
4、创建mysqld_multi脚本
$ cd /home/zhaoshuangshuang/mysql/
$ cp ../mysql-5.1.63/support-files/mysqld_multi.server ./init.d
$ vi init.d/mysqld_multi.server
#!/bin/sh
#
# A simple startup script for mysqld_multi by Tim Smith and Jani Tolonen.
# This script assumes that my.cnf file exists either in /etc/my.cnf or
# /root/.my.cnf and has groups [mysqld_multi] and [mysqldN]. See the
# mysqld_multi documentation for detailed instructions.
#
# This script can be used as /etc/init.d/mysql.server
#
# Comments to support chkconfig on RedHat Linux
# chkconfig: 2345 64 36
# description: A very fast and reliable SQL database engine.
#
# Version 1.0
#
basedir=/home/zhaoshuangshuang/mysql
bindir=/home/zhaoshuangshuang/mysql/bin
if test -x $bindir/mysqld_multi
then
mysqld_multi="$bindir/mysqld_multi";
else
echo "Can't execute $bindir/mysqld_multi from dir $basedir";
exit;
fi
case "$1" in
'start' )
"$mysqld_multi" start $2
;;
'stop' )
"$mysqld_multi" stop $2
;;
'report' )
"$mysqld_multi" report $2
;;
'restart' )
"$mysqld_multi" stop $2
"$mysqld_multi" start $2
;;
*)
echo "Usage: $0 {start|stop|report|restart}" >&2
;;
esac
设置mysqld_multi脚本的可执行性,chmod u+x mysqld_multi
5、管理数据库实例
启动:
$ /home/zhaoshuangshuang/mysql/init.d/mysqld_multi start 1,2
观看启动后:
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 31877/mysqld
tcp 0 0 0.0.0.0:3307 0.0.0.0:* LISTEN 31916/mysqld
关闭:
$ /home/zhaoshuangshuang/mysql/init.d/mysqld_multi stop 1,2
6、登陆数据库实例
登陆3306端口:
bin/mysql -P 3306 -u root -p -S /home/zhaoshuangshuang/mysql/run/mysqld.sock
登陆3307端口:
bin/mysql -P 3307 -u root -p -S /home/zhaoshuangshuang/mysql/run/mysqld.sock2
其中-S是选择的socket路径,在步骤2的my.cnf中设置。
MySQL 5.1.63 单机配置多实例(简单配置)的更多相关文章
- CCNA网络工程师学习进程(6)vlan相关协议的配置与路由器简单配置介绍
前面已经介绍了大部分与vlan技术相关的交换机的协议的配置,更深层次的还有STP协议和以太网端口聚合技术,接着还会简单介绍一下路由器的基本应用. (1)STP(Spanning-tre ...
- mysql 5.7.15单机主从快速搭建并配置复制表到不同库
一直以来因为线上系统盘中风控计算过于消耗资源,导致服务器负载太高,时常影响盘中交易的稳定性,最近决定了将风控拆分到独立的库进行计算,并进行回填操作. 总体来说,是将部分风控计算相关的表同步到备库,但是 ...
- 配置 Cocoapods的简单配置及胡思乱想
外部访问属性 & 重要属性变化 外部访问方法 监听方法 内部属性 swift编写 懒加载控件.布局.监听 使用第三方框架之前先需要配置 cocoapods环境 (唐巧博客) gib 查看自己的 ...
- 重新整理 .net core 实践篇—————配置系统之简单配置中心[十一]
前言 市面上已经有很多配置中心集成工具了,故此不会去实践某个框架. 下面链接是apollo 官网的教程,实在太详细了,本文介绍一下扩展数据源,和简单翻翻阅一下apollo 关键部分. apollo 服 ...
- Amazon EC2安装mysql多实例并配置主从复制
1.MySQL安装: EC2直接使用yum安装mysql很方便: yum install mysql mysql-server mysql-libs 此处安装了三个包 完事之后可以直接使用 servi ...
- MySQL 5.5.35 单机多实例配置详解
一.前言 二.概述 三.环境准备 四.安装MySQL 5.5.35 五.新建支持多实例的配置文件(我这里配置的是四个实例) 六.初始化多实例数据库 七.提供管理脚本 mysqld_multi.serv ...
- mysql多实例的配置和管理
原文地址:mysql多实例的配置和管理 作者:飞鸿无痕 多实例mysql的安装和管理 mysql的多实例有两种方式可以实现,两种方式各有利弊.第一种是使用多个配置文件启动不同的进程来实现多实例,这种方 ...
- Elasticsearch单机下多实例配置
##################### Elasticsearch Configuration Example ##################### index.cache.field.ty ...
- Linux下mysql 多实例安装配置
首先我们要清楚什么是多实例?所谓多实例就是用多个配置文件来启动多个不同端口的进程,以不同的端口的形式为外提供服务.明白了多实例 我们下面的操作和配置就一目了然了首先我们要安装一套基础的应用程序,也就是 ...
随机推荐
- HTML <base> 标签的 target 属性 —— <base target="_blank" />
为页面上所有链接规定默认目标: <head> <base target="_blank" /> </head> <body> < ...
- java的回忆录
封装的三步骤:(1)加属性(成员变量.全局变量.域field)用private来修饰(2)为对应的属性生成共有的setter.getter方法(3)在对应的setter的方法中可以根据需要加入对应的验 ...
- echars3.0 柱状图y轴字体斜放
xAxis: [ { type: 'category', axisLabel: { interval: 0, rotate: 45,//倾斜角度设置,是什么时针未测 margin: 2 //距离上部的 ...
- Java之绘制方法
绘制图形所用的函数类别分别为视图类.图形单元类和页面类. 对视图类,设置窗口的位置和大小: 对图形单元类,设置图形边界: 对页面类,只有当页面作为元件,该函数才起作用,设置元件边界. 一般构建窗口我们 ...
- C# 日期减法
public class DateExample { public static void Main() { DateTime dt1 = new DateTime(2012, 7, 16); Dat ...
- 当html中存在url中如: onclick="toView('参数1')", 参数1是特别字符,如&asop;"' "等时,浏览器解析时会报错。解决方法如文中描述
解决方案: 自定义标签将字符串转换成unicode编码后输出显示到页面即可 解析原理:解析顺序html ---url ----javascript---url,由于unicode编码在htm解析阶段 ...
- 深入探析koa之中间件流程控制篇
koa被认为是第二代web后端开发框架,相比于前代express而言,其最大的特色无疑就是解决了回调金字塔的问题,让异步的写法更加的简洁.在使用koa的过程中,其实一直比较好奇koa内部的实现机理.最 ...
- JavaScript之数组对象
Array类型是ECMAScript中最常用的类型了. 一.声明方式 1.使用Array构造函数 var arr1 = new Array(); 如果预先知道要保存数组的数量, 也可以给构造函数传递该 ...
- javascript笔记——date以及datetime的比较
<script src="$!webPath/resources/js/laydate/laydate.js"></script> <script s ...
- Js 中的this
关于this This代表"当前"对象 谁调用就代表谁 行内绑定 不带参数 行内绑定 带参数 this 当前对象 Object HTMLInputElement 动态绑定 要获取自 ...