您的位置:首页 > 博客中心 > 数据库 >

MySQL单机多实例配置

时间:2022-03-14 05:15

测试环境:

操作系统 CentOS 6.4 x86

MySQL 5.5.38


1、什么是MySQL多实例?

   MySQL多实例就是在一台机器上开启多个不同的服务端口(如:3306,3307,3308),运行多个MySQL服务进程,通过不同的socket监听不同的服务端口来提供各自的服务。各个实例之间是相互独立的,每个实例的datadir, port, socket, pid都是不同的。


2、MySQL多实例的特点

  • 这里实验仅配置2个实例,只要你的机器足够强劲,那么可以配置更多的实例。

  • 本实验仅做了初步的设置,mysql的root用户密码, 以及其他匿名用户需要手动去设置或删除

  • 非常困扰的是如何手动指定配置文件,以及Mysql读取配置文件的顺序

  • MySQL自带了几个不同的配置文件,放置在/opt/mysql/support-files目录下,分别是my-huge.cnf,my-innodb-heavy-4G.cnf,my-large.cnf,my-medium.cnf,my-small.cnf,通过名称我们可以很直观的了解到他们是针对不同的服务器配置的,本文中仅有的一点关于InnoDB的配置,是取自于my-small.cnf的,因为我是在虚拟机上进行的设置;在生产环境中,我们可以通过参考my-huge.cnf或my-innodb-heavy-4G.cnf中的部分参数配置,来对服务器进行优化;

  • 关于MySQL缓存参数的优化,主要用于提升I/O能力,可以参考这里:

  • 在单机运行多实例的情况下,切忌使用 mysql -hlocalhost 或 直接忽略-h参数 登陆服务器,这应该算是MySQL的一个bug,就是如果使用localhost或忽略-h参数,而不是指定127.0.0.1的话,即使选择的端口是3307,还是会登陆到3306中去,因此应尽量避免这种混乱的产生,统一用127.0.0.1绑定端口 或 采用socket 来登陆;


  • 问题:第二种方案 my.cnf 配置文件中,为什么还要配置 [mysqld] 呢?? 

    还希望各位帮忙解答一下。


    参考:


    本文出自 “” 博客,请务必保留此出处

热门排行

今日推荐

热门手游