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. IOS之Block讲解

    Block,称为代码块,它是一个C级别的语法以及运行时的一个特性,和标准C中的函数(函数指针)类似,但是其运行需要编译器和运行时支持,从ios4.0开始就很好的支持Block. Block很像匿名方法 ...

  2. php CURL 请求头和响应头获取

    1.从CURL中获取响应头 $oCurl = curl_init(); // 设置请求头, 有时候需要,有时候不用,看请求网址是否有对应的要求 $header[] = "Content-ty ...

  3. Python编程 - json字符串的解析

    import json jsonString = '{"arrayOfNums":[{"number":0},{"number":1},{& ...

  4. json的工具以及浏览器排序问题

    浏览器中,所有涉及json的工具会按照键进行排序,这个与实际的查询的数组的顺序有出入,见下图:

  5. WPF使用DEV之TreeListControl---加入复选框

    1.绑定的Class中加入一个Bool类型的属性 2.   该属性无需初始赋值,你执行就可以看到如图: Bool类型数据自己主动变成了复选框 watermark/2/text/aHR0cDovL2Js ...

  6. Android自动填写获取到的验证码

    Android需要添加的相关权限 <uses-permission android:name="android.permission.RECEIVE_SMS">< ...

  7. ORA-14300: 分区关键字映射到超出允许的最大分区数的分区

    环境为:Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production 对象表为按天的自动分区表: PARTI ...

  8. openerp 中文乱码及界面翻译不全

    openerp中文报表乱码问题,即是字体问题,环境是ubuntu 12.04 openerp 6.1, deb all in one安装方式 一.cd usr/share/fonts/truetype ...

  9. 从Java的堆栈到Equals和==的比較

    认识Java中堆和栈 栈与堆都是Java用来在Ram中存放数据的地方. 与C++不同.Java自己主动管理栈和堆,程序猿不能直接地设置栈或堆. Java的堆是一个执行时数据区,类的对象从中分配空间.这 ...

  10. 简单的 Helper 封装 -- SecurityHelper 安全助手:封装加密算法(MD5、SHA、HMAC、DES、RSA)

    using System; using System.IO; using System.Security.Cryptography; using System.Text; namespace Wen. ...