Mysql multi实现mysql双实例

1、添加mysql用户

以root登录,新建mysql用户组

 groupadd mysql
useradd -d /data/mariadb -g mysql -m mysql

2、 mariadb的安装置

2.1 安装所需组件

 yum install -y cmake  gcc-c++ ncurses-devel libaio bison

2.2创建mariadb编译根目录

mkdir -p /usr/local/mariadb

2.3解压缩源码包

tar zxvf mariadb-5.5.51.tar.gz
cd mariadb-5.5.51

2.4编译安装

cd /usr/local/mariadb/mariadb-5.5.51/
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mariadb -DMYSQL_DATADIR=/data/mariadb -DSYSCONFDIR=/usr/local/mariadb -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mariadb/mysql.sock
make
make install

2.5修改环境变量文件,修改vi ~/.bash_profile,添加如下内容;

PATH=$PATH:$HOME/bin:/usr/local/mariadb/bin
export PATH
添加完成后,source ~/.bash_profile

3.mariadb双实例的建立

3.1建立两个实例所需目录并授权

 makdir -p /usr/local/mariadb1_3307
makdir -p /usr/local/mariadb2_3308
makdir -p /data/mariadb1_3307
makdir -p /data/mariadb2_3308

3.2 拷贝配置文件到/etc目录下

 cp /usr/localmariadb/support-files/my-medium.cnf/my.cnf /etc/my.cnf

3.3 配置mariadb1实例1

3.3.1修改配置文件为

[mysqld_multi]
mysqld=/usr/local/mariadb/bin/mysqld_safe
mysqladmin=/usr/local/mariadb/bin/mysqladmin
log=/data/mariadb/mysqld_multi.log
[mysqld1]
port = 3307
socket = /usr/local/mariadb1_3307/mysql.sock
basedir = /usr/local/mariadb
datadir = /data/mariadb1_3307
pid-file = /data/mariadb1_3307/mysql.pid
user = mysql
bind-address = 0.0.0.0
server-id = 1230
slave-skip-errors=all
binlog=/data/mariadb1_3307/binlog
relay-log=/data/mariadb1_3307/relay_log/mysql-relay-bin
log_slave_updates = 1
read_only = 0
binlog_format = row
expire_logs_days = 10
default_storage_engine = InnoDB
innodb_buffer_pool_size = 128M
innodb_flush_log_at_trx_commit = 0

3.3.2 初始化数据库

进入bin目录,

cd /usr/local/mariadb/scripts
./mysql_install_db --user=mysql --basedir=/usr/local/mariadb --datadir=/data/mariadb1_3307

3.4配置mariadb2实例2

方法同实例1

4、启动多实例数据库

4.1启动数据库实例

 mysqld_multi start 1-2

4.2关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service
查看:netstat -tnlp

4.3 修改环境变量文件,修改vi ~/.bash_profile,添加如下内容;

PATH=$PATH:/usr/local/mariadb/bin
export PATH
添加完成后,source ~/.bash_profile

4.4访问数据库

 mysql -uroot -p -S /usr/local/mariadb1_3307/mysql.sock   --实例1
mysql -uroot -p -S /usr/local/mariadb2_3308/mysql.sock --实例2

4.5 查看多实例

mysqld_multi report

4.6 关闭数据库

刚开始无法使用mysql_multi关闭数据库

原因:需对账号授权

mysqld_multi stop 1,2

4.6 完成

Mysql multi实现mysql双实例的更多相关文章

  1. MySql 双实例安装

    1.官网下载压缩包 https://dev.mysql.com/downloads/mysql/ 2.解压到D盘 3.修改my.ini 文件 [mysql] # 设置mysql客户端默认字符集 def ...

  2. mysql传统主从、双主复制+keepalived配置步骤

    mysql主从.主主复制(双主复制)配置步骤 一:MySQL复制: MySQL复制简介: 将master服务器中主数据库的ddl和dml操作通过二进制日志传到slaves服务器上,然后在master服 ...

  3. python操作mysql数据库的相关操作实例

    python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...

  4. MySQL Replication, 主从和双主配置

    MySQL Replication, 主从和双主配置 MySQL的Replication是一种多个MySQL的数据库做主从同步的方案,特点是异步,广泛用在各种对MySQL有更高性能,更高可靠性要求的场 ...

  5. Spring 4 MVC+Hibernate 4+MySQL+Maven使用注解集成实例

    Spring 4 MVC+Hibernate 4+MySQL+Maven使用注解集成实例 转自:通过注解的方式集成Spring 4 MVC+Hibernate 4+MySQL+Maven,开发项目样例 ...

  6. MySQL 高可用性—keepalived+mysql双主

    MySQL 高可用性—keepalived+mysql双主(有详细步骤和全部配置项解释) - 我的博客 - CSDN博客https://blog.csdn.net/qq_36276335/articl ...

  7. mysql数据库分区功能及实例详解

    分区听起来怎么感觉是硬盘呀,对没错除了硬盘可以分区数据库现在也支持分区了,分区可以解决大数据量的处理问题,下面一起来看一个mysql数据库分区功能及实例详解   一,什么是数据库分区 前段时间写过一篇 ...

  8. mycat 1.6.6.1安装以及配置docker 安装mysql 5.7.24 双主多从读写分离主主切换

    mycat和mysql的高可用参考如下两个图 简介:应用程序仅需要连接HAproxy或者mycat,后端服务器的读写分离由mycat进行控制,后端服务器数据的同步由MySQL主从同步进行控制. 服务器 ...

  9. linux系统mysql主主复制(双主复制)

    一.简介 在上一篇的主从复制中:http://www.cnblogs.com/lay2017/p/9043985.html 我们了解到,mysql通过master写日志,slave读取并执行日志内容从 ...

随机推荐

  1. 20个令人惊叹的音乐应用程序UI,值得收藏

    我们无法想象世界上没有手机.他们已经成为日常生活中不可缺失的一部分.今天的手机可以让你不只是拨打电话和发送消息.它可以让你浏览网页空间,拍照,看书,听音乐等等. 回顾一下互联网,你会看到不同的音乐AP ...

  2. Memcached和Memcache 配置教程windows X64

    一.Memcached和Memcache的区别: 网上关于Memcached和Memcache的区别的理解众说纷纭,我个人的理解是: Memcached是一个内存缓存系统,而Memcache是php的 ...

  3. Java 吸血鬼数字

    非常羞愧(事实上没什么羞愧.水平就这样).搞了半晌才写出来了一个Java 版求四位吸血鬼数字的方法 吸血鬼数字是指位数为偶数的数字.能够由一对数字相乘而得到.而这对数字各包括乘积的一半位数的数字,当中 ...

  4. 新浪微博SSO登陆机制(转载)

    原文地址: http://www.cnblogs.com/AloneSword/p/3840548.html 最近在使用sina微博时,经常性交替使用 weibo.com 和 t.sina.cm.cn ...

  5. IIS 之 线程池最大线程数

    .net4.0,32位机器最大线程数,每核1023个 .net4.0,64位机器最大线程数,每核32768个 .net3.0,最大线程数,每核250个 .net2.0,最大线程数,每核25个 默认的最 ...

  6. Android IO存储总结

    1 前言  android设备的存储特点:  分内存和SD卡两种存储设备,且android设备存储空间小,且系统碎片化等情况.     SD卡:老版本的android设备 不存在内置SD        ...

  7. JavaScript简述一

    一.什么时JavaScript JavaScript是一种具有面向对象能力的,解释型的设计语言,更具体一点,它是基于圣明和事件驱动并具有相对安全必的客户端脚本语言,因为它不需要在一个语言环境下运行,只 ...

  8. 微信小程序-开发入门(一)

    微信小程序已经火了一段时间了,之前一直也在关注,就这半年的发展来看,相对原生APP大部分公司还是不愿意将主营业务放到微信平台上,以免受制于腾讯,不过就小程序的应用场景(用完即走和二维码分发等)还是很值 ...

  9. PowerMock介绍

    一.为什么要使用Mock工具 在做单元测试的时候,我们会发现我们要测试的方法会引用很多外部依赖的对象,比如:(发送邮件,网络通讯,远程服务, 文件系统等等). 而我们没法控制这些外部依赖的对象,为了解 ...

  10. iOS 推断设备为iPhone还是iPad

    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) { self.viewControlle ...