一、多实例安装简介

所谓多实例安装其实是指在一台机器上开启多个不同的mysql服务端口(3306,3307),运行多个mysql服务进程,这些服务进程通过不同的socket监听不同的服务端口来提供各自的服务;多实例安装主要目的是为了有效利用服务器资源,但是也存在资源互相抢占问题。

二、安装和启动(root用户进行的操作)

$ yum install -y libaio #安装mysql依赖软件包

$ groupadd mysql #添加mysql权限组

$ useradd -r -g mysql -s /bin/false mysql #添加mysql权限组的非登录用户mysql

$ cd /usr/local #进入安装目录

$ tar zxvf mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz #解压MySQL安装包

$ mv mysql-5.7.27-linux-glibc2.12-x86_64 mysql #重命名为mysql,此处也可以建立软连接,MySQL配置中使用的是mysql,所以此处目录名最好为mysql,不要修改成其它的。

$ cd mysql

$ mkdir -p data/3306/{data,tmp,log} #创建3306实例的相关目录

$ touch data/3306/log/mysql.log #创建mysql日志文件,此文件mysql不会自动生成,只好先手动生成了

$ cp /etc/my.cnf data/3306/ #创建3306实例的配置文件

$ vi data/3306/my.cnf #修改my.cnf配置文件,参数如下图(参数就不再介绍了,和单实例的配置几乎一样,就mysqld中多了port参数)

$ cp -R data/3306 data/3307 #将3306实例相关配置复制到3307实例

$ cat data/3307/my.cnf | tr [3306] [3307] >> my1.cnf ; mv -f my1.cnf my.cnf #修改3307配置文件将其中的3306全局替换成3307

$ chown mysql:mysql -R data/ #修改权限

$ bin/mysqld --defaults-file=/usr/local/mysql/data/3306/my.cnf --initialize-insecure --user=mysql #初始化3306实例数据库,此处会加载my.cnf中的datadir参数,并在其配置目录创建初始数据库,此处通过--initialize-insecure参数指定不生成默认密码

$ bin/mysqld --defaults-file=/usr/local/mysql/data/3307/my.cnf --initialize-insecure --user=mysql #初始化3307实例数据库,此处会加载my.cnf中的datadir参数,并在其配置目录创建初始数据库,此处通过--initialize-insecure参数指定不生成默认密码

$ bin/mysqld_safe --defaults-file=/usr/local/mysql/data/3306/my.cnf --user=mysql & #启动3306数据库实例

$ bin/mysqld_safe --defaults-file=/usr/local/mysql/data/3307/my.cnf --user=mysql & #启动3307数据库实例

$ ps -ef | grep mysql | grep -v grep #此处有3306和3307实例说明启动了2个mysql服务

$ bin/mysql -S /usr/local/mysql/data/3306/tmp/mysql.sock #启动mysql客户端连接3306数据库实例,此处可以启动并进入mysql命令行,说明mysql服务没有问题

$ bin/mysql -S /usr/local/mysql/data/3307/tmp/mysql.sock #启动mysql客户端连接3307数据库实例,此处可以启动并进入mysql命令行,说明mysql服务没有问题

三、将mysql相关命令配置成全局

$ vi /etc/profile #修改全局配置文件将mysql相关命令设置进环境变量中

此处就不写多实例MySQL启动的脚本了,有兴趣的可以参考/usr/local/mysql/support-files/mysqld_multi.server文件或者自行百度。

四、多实例数据库过程中遇到的错误

ERROR 1045 (28000): Unknown error 1045

此错误是我使用bin/mysql -S /usr/local/mysql/data/3306/tmp/mysql.sock命令连接数据库时报的错误, 后来看了下我使用这个命令时登录用户是普通用户非root且该用户不在mysql用户列表中,所以     需要把命令改成bin/mysql -uroot -p -S /usr/local/mysql/data/3306/tmp/mysql.sock来指定mysql连接用户。

mysql 多配置文件实例安装_mysql安装之多实例多配置文件安装相关推荐

  1. mysql5.7.13编译安装_MySQL 5.7.13 源码编译安装配置方法图文教程

    安装环境:centos7 64位 mini版 官网源码编译安装文档: 一.系统安装条件 官方文档说明: 1> cmake mysql使用cmake跨平台工具预编译源码,用于设置mysql的编译参 ...

  2. mysql 单实例部署_Mysql 数据库单机多实例部署手记

    最近的研发机器需要部署多个环境,包括数据库.为了管理方便考虑将mysql数据库进行隔离,即采用单机多实例部署的方式. 找了会资料发现用的人也不是太多,一般的生产环境为了充分发挥机器性能都是单机单实例运 ...

  3. mysql 单实例部署_MySQL 5.5单实例 编译安装

    1.建立MySQL账号 首先以root登录到Linux,然后执行如下命令创建MySQL组及用户[root@loveyu home]# groupadd mysql [root@loveyu home] ...

  4. mysql++多版本安装_MySQL多版本多实例安装启动

    多版本,大版本不同测试多实例,一个MySQL5.7.30一个MySQL8.0.20 解压8.0 tar -xvf mysql-8.0.20-linux-glibc2.12-x86_64.tar tar ...

  5. mysql mha 安装_MySQL高可用方案 MHA之一MHA安装

    MHA0.58安装 MHA(Master High Availability)由两部分组成:MHA Manager(管理节点)和MHA Node(数据节点). 管理节点 mha4mysql-manag ...

  6. mysql主从复制原理 简书_mysql主从复制,从原理讲到安装配置,全干货

    0.为什么需要主从复制? 1.在业务复杂的系统中,有这么一个情景,有一句sql语句需要锁表,导致暂时不能使用读的服务,那么就很影响运行中的业务,使用主从复制,让主库负责写,从库负责读,这样,即使主库出 ...

  7. mysql 8.0.13解压版安装_mysql 8.0.13 解压版安装配置方法图文教程

    一.安装 1.下载mysql 下载地址:链接地址 在浏览器打开网页后,下载如图所示压缩包 下载完成后将该压缩包进行解压,位置自定义,如:D:\Developer\mysql-8.0.13-winx64 ...

  8. .tar.gz mysql 安装_mysql tar.gz 版本 linux系统的安装-Go语言中文社区

    mysql下载地址: https://dev.mysql.com/downloads/mysql/ 1.  上传下载的tar.gz文件发送到linux 上传的路径: /usr/local/mysql/ ...

  9. mysql主从配置安装_mysql主从配置完整版(二进制安装)

    系统基础 centos6.5 mysql5.6 防火墙关闭,目录挂载等 fdisk /dev/sdb vgcreate datavg /dev/sdb1 lvcreate -L 99G -n data ...

  10. mysql zip win10安装_mysql 8.0.16 Win10 zip版本安装配置图文教程

    本文为大家分享了mysql 8.0.16  Win10 zip版本安装配置图文教程,供大家参考,具体内容如下 首先去mysql官网下载mysql最新版本 1.选择如图所示 community 2.点击 ...

最新文章

  1. python映射类型-Python 映射类型字典dict操作定义
  2. PL/SQL学习笔记-循环控制与顺序控制
  3. 【解决办法】你目前是以 ***的身份登录。请注销,然后使用你用于阅读组织电子邮件的帐户登录 Outlook
  4. java中事务实例,Java Spring 事务管理器入门例子教程(TranscationManager)
  5. 教你打入clr内部: 配置windows上的windbg,linux上的lldb
  6. mysql5.7组复制多主一从搭建_MySql5.7-多源复制(多主单从)
  7. python paramiko并发_python paramiko 多线程批量执行指令及批量上传文件和目录
  8. 「leetcode」203.移除链表元素:听说用虚拟头节点会方便很多?
  9. Kubernetes基础篇:主要特性、基本概念与总体架构
  10. 斐讯t1刷入linux系统,斐讯phicomm n1刷入Gentoo系统斐讯N1刷Linux系统教程
  11. php开源代码推荐,非常好用的源代码网站推荐,用这些开源代码就够了
  12. js 弹窗中写html代码,简单了解JavaScript弹窗实现代码
  13. 六级单词词汇表(有注音)
  14. python日期运算_Python:日期计算器
  15. 电脑计算机c盘打不开怎么办,电脑的c盘炸了打不开电脑了怎么处理
  16. JavaScript《一》
  17. 如何获取ffmpeg返回的错误信息
  18. 安装时间大于30秒_30个住宅室内消防设置检验要点!硬核干货!
  19. MATLAB 批量改文件后缀
  20. 关于SMTP邮件无法发送到 SMTP服务器,传输错误代码为 0x80040217

热门文章

  1. [swift]-使用JavaScript解决WKWebView无法发送POST参数问题
  2. poj3617 贪心
  3. jquery中对小数进行取整
  4. Hyper-V虚拟机快照占用磁盘空间过多,导致虚拟机不能启动怎么办
  5. Unity3D NGUI学习(一)血条
  6. 分类算法:决策树(C4.5)
  7. OAF页面查找数据源
  8. cmake 静态编译 简介
  9. nsswitch.conf文件详解
  10. windows下nginx安装、配置与使用