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

目录
  • MySQL多实例
    • 多实例概述
      • 什么是多实例:
      • 为什么要配置多实例
      • 多实例的应用场景
      • 配置多实例

MySQL多实例

多实例概述

什么是多实例:

在一台服务器上,运行多个数据库服务,这些服务进程通过不同的socket监听不同的服务端口来提供各自的服务;

为什么要配置多实例

  • 节约运维成本
  • 提高硬件利用率

多实例的应用场景

  • 资金比较紧张的公司;
  • 并发访问不是特别大的业务;

配置多实例

1.安装软件

具体操作:

解压软件、修改目录名、修改PATH路径

如果在已有数据库服务的机器上运行多实例,先查看数据库服务的版本是否支持多实例,如果不支持需要停掉服务,安装能支持多实例的数据库版本

接下来安装提供多实例服务的软件

下面演示的版本为MySQL5.7.36,使用二进制安装,其余安装方式请看MySQL的安装方式

groupadd -r -g 306 mysql
useradd -g 306 -r -u 306 mysql
tar -zxvf mysql-5.7.36-linux-glibc2.12-x86-64.tar.gz
mv /root/mysql-5.7.36-linux-glibc2.12-x86_64 /usr/local/mysql

2.配置文件

主配置文件/etc/my.cnf

  • 每个实例要有独立:数据库目录、端口
  • socket文件、pid文件、错误日志文件
vim /etc/my.cnf
[mysqld_multi]       #启动多实例
mysqld     = /usr/local/mysql/bin/mysqld_safe   #指定进程文件路径
mysqladmin = /usr/local/mysql/bin/mysqladmin    #指定管理命令路径
user       = root    #指定进程用户
#pass       = MySQL@123  #可以不指定密码,在初始化的时候也会出现密码

[mysqld3306]     #实例进程名称,3306是服务编号
socket     = /tmp/mysql.sock1   #指定sock文件的路径和名称
port       = 3306    #指定端口
pid-file   = /data/3306/mysqld.pid   #进程文件pid号文件按位置
datadir    = /data/3306     #数据库目录,最好提前创建
log-error  = /data/3306/mysqld.log    #错误日志位置

[mysqld3307]
socket     = /tmp/mysql.sock2
port       = 3307
pid-file   = /data/3307/mysqld.pid
datadir    = /data/3307
log-error  = /data/3307/mysqld.log

mkdir -p /data/330{6..7}
chown -R mysql:mysql /data/330{6,7}

socket文件:自己访问自己的数据库服务时,通过socket文件传递参数

3.启动服务

管理多实例

  • 启动服务

mysqld_multi start 实例编号 #启动服务

  • 停止服务

mysqld_multi --user=root --password=密码 stop 实例编号

/usr/local/mysql/bin/mysqld_multi start 3306   #首次启动初始化
#也可以使用这个命令来初始化
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307
#用这个命令初始化之后还需要在使用启动服务
/usr/local/mysql/bin/mysqld_multi start 3307
输入绝对路径太麻烦,可以写入环境变量
vim /etc/
export PATH=$PATH:/usr/local/mysql/bin/

source /etc/profile.d/mysql.sh
#然后就可以写短指令
mysqld_multi start 3307

4.查看服务状态

ss -nultp | grep 3306
ss -nultp | grep 3307

5.使用初始密码连接服务

客户端访问

本机连接

使用初始密码连接

修改本机登录密码

#mysql -uroot -p'初始密码' -S sock文件
#mysql>alter user root@"localhost" identified by "新密码";
#连接第一个数据库实例测试
/usr/local/mysql/bin/mysql -uroot -p'' -S /tmp/mysql.sock1
show databases;
alter user root@"localhost" identified by "123456";
show databases;
exit
#连接第二个数据库实例测试
mysql -uroot -p'' -S /tmp/mysql.sock2
show databases;
alter user root@"localhost" identified by "123456";
show databases;
exit


使用新密码再次登录验证

6.停止多实例

mysqld_multi --user=root  --password=123456 stop 3306
#mysqld_multi --user=root  --password=123456 stop  如果不写实例号,就会停止数据库用户为root密码为123456的实例
ss -nultp | grep 3306  

到此这篇关于MySQL多实例的配置应用实例场景的文章就介绍到这了,更多相关MySQL多实例内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 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多实例配置方案

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

  • MySQL系列之二 多实例配置

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

  • Linux下MySQL多实例部署及安装指南

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

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

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

  • MySQL数据库超时设置配置的方法实例

    目录 前言 1. JDBC超时设置 2. 连接池超时设置 3. MyBatis查询超时 4. 事务超时 总结 前言 最近备战京东双11,在配置MySQL的超时配置发现有很多地方可以设置.这么多超时的配置有什么影响,以及配置会有什么影响呢?今天的文章就让我来大家来分析一下. 1. JDBC超时设置 connectTimeout:表示等待和MySQL数据库建立socket链接的超时时间,默认值0,表示不设置超时,单位毫秒,建议30000 socketTimeout:表示客户端和MySQL数据库建立s

  • Mariadb数据库主从复制同步配置过程实例

    目录 一.环境规划 二.Mariadb的主从复制介绍 1.主从复制简介 2.半同步复制介绍 3.主从复制原理图 三.安装Mariadb 1.配置yum仓库 2.检查yum仓库 3.安装mariadb 4.启动mariadb服务 5.从节点安装mariadb 四.mariadb主库配置 1.mariadb的初始化 2.修改主库配置文件 3.重启mariadb服务 五.mariadb从库配置 1.修改从库node01节点的server.cnf文件 2.修改从库node02节点的server.cnf文

  • MySQL 复制详解及简单实例

    MySQL 复制详解及简单实例 主从复制技术在MySQL中被广泛使用,主要用于同步一台服务器上的数据至多台从服务器,可以用于实现负载均衡,高可用和故障切换,以及提供备份等等.MySQL支持多种不同的复制技术,诸如单向,半同步异步复制等以及不同级别的复制,诸如数据库级别,表级,跨库同步等等.本文简要描述了一个基本的主从复制并给出示例. 1.复制的基本原理(步骤) a.在主库上把数据更改记录的二进制日志(binary log)     b.从库上的I/O线程连接到主库并请求发送其二进制日志文件(主库

  • mysql分区功能详解,以及实例分析

    一,什么是数据库分区 前段时间写过一篇关于mysql分表的 的文章,下面来说一下什么是数据库分区,以mysql为例.mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面 (可以通过my.cnf中的datadir来查看),一张表主要对应着三个文件,一个是frm存放表结构的,一个是myd存放表数据的,一个是myi存表 索引的.如果一张表的数据量太大的话,那么myd,myi就会变的很大,查找数据就会变的很慢,这个时候我们可以利用mysql的分区功能,在物理上将这 一张

  • C++利用MySQL API连接和操作数据库实例详解

    1.C++连接和操作MySQL的方式 系列文章: MySQL 设计和命令行模式下建立详解 C++利用MySQL API连接和操作数据库实例详解 在Windows平台,我们可以使用ADO.ODBC或者MySQL API进行连接和操作.ADO (ActiveX Data Objects,ActiveX数据对象)是Microsoft提出的一个用于存取数据源的COM组件.它提供了程序语言和统一数据访问方式OLE DB的一个中间层,也就是Microsoft提出的应用程序接口(API)用以实现访问关系或非关

  • Spring MVC实现mysql数据库增删改查完整实例

    最近刚学了springmvc框架,感觉确实方便了不少,减少了大量的冗余代码.就自己做了个小项目练练手,这是个初级的springmvc应用的项目,没有用到mybatis,项目功能还算完善,实现了基本的增删改查的功能. 项目环境: -系统:win10 -开发环境:eclipseOxygenReleaseCandidate3(4.7) -jdk版本:java1.8(121) -mysql:5.7 -spring:4.0 -tomcat:8.5 用到的技术: springmvcspringjspjdbc

  • Spring Boot 2.0多数据源配置方法实例详解

    两个数据库实例,一个负责读,一个负责写. datasource-reader: type: com.alibaba.druid.pool.DruidDataSource url: jdbc:mysql://192.168.43.61:3306/test?useUnicode=true&characterEncoding=utf8&autoReconnect=true&useSSL=false username: icbc password: icbc driver-class-na

  • MYSQL8.0.13免安装版配置教程实例详解

    一.下载,本人以8.0为例 下载地址:https://dev.mysql.com/downloads/mysql/ 二.解压到某个目录,例如:D:/mysql/mysql-8.0.13-winx64 三.配置环境变量 1.新建一个变量:MYSQL_HOME 变量值:D:/mysql/mysql-8.0.13-winx64 2.修改path变量 添加一条记录:%MYSQL_HOME%/bin 四.在D:/mysql/mysql-8.0.13-winx64目录下创建my.ini文件 [mysqld]

  • MySQL超详细实现用户管理实例

    目录 一.用户管理 1.1 新建用户 1.2 查看用户信息 1.3 重命名用户 1.4 删除用户 1.5 修改用户密码 1.修改当前的用户密码 2.修改其他用户密码 1.6 忘记密码怎么办 二.授权 2.1 用户授权 2.2 查看所授予的权限 2.3 撤销权限 一.用户管理 1.1 新建用户 create user '用户名'@'主机名' [identified by [password] '密码']; 用户名就不用解释了,就是我们登录时使用的账号 主机名指定我们创建的用户可以在哪些主机上登陆,

随机推荐