5.8 在一台机器上运行多个mysql实例

5.8.1 设置多个data目录
5.8.2 在windows上运行多个mysql实例[1]
5.8.3 在UNIX上运行多个mysql实例
5.8.4 在多服务器环境下使用客户端程序

一些情况下,你可能想在单台机器上运行多个mysql的实例。你可能想在不影响现有产品设置的情况下,测试新的mysql发布版。或者,你可能想授予不同的用户访问他们自己管理的不同mysqld服务器的权限。(例如,您可能是一个Internet服务提供商,希望为不同的客户提供独立的MySQL安装。)
每个实例可以使用不同的MySQL服务器二进制文件,也可以对多个实例使用相同的二进制文件,或者两种方法的任意组合。 例如,您可能从MySQL 5.7运行一台服务器,而从MySQL 8.0运行一台服务器,以查看不同版本如何处理给定的工作负载。 或者,您可以运行当前生产版本的多个实例,每个实例管理一组不同的数据库。
无论您是否使用不同的服务器二进制文件,都必须为运行的每个实例配置几个操作参数的唯一值。这消除了不同实例间冲突的隐患。参数可以在命令行,选项文件,或者通过环境变量设置。参见4.2.2节,”设置程序参数”。为查看给定实例使用的参数,请连接到它并使用SHOW_VARIABLES语句。
MySQL实例管理的主要资源是data目录。每个实例应使用不同的data目录,它的位置通过--datadir=dir_name设置。为每个实例配置不同的data目录,和关于没有这样做的警告,参见5.8.1节,”设置多个data目录”。
除使用不同的data目录外,必须为每个服务器实例指定不同的多个选项的值:

 --prot=prot_num
–port控制了TCP/IP连接的端口号。可选的,如果主机有不同的网络地址,你可以设置bind_address系统变量使每个服务器监听不同的地址。
 --socket={file_name|pipe_name}
–socket控制UNIX的socket文件路径,或Windows的命名管道名。在Windows上,仅需要为那些配置为允许命名管道连接的服务器指定不同的管道名称。
 --shared-memory-base-name=name
这个选项只在Windows上应用。它指定Windows服务器使用的共享内存名称,以允许客户端使用共享内存进行连接。 仅对于配置为允许共享内存连接的那些服务器,才需要指定不同的共享内存名称。
 --pid-file=file_name
这个选项制定了文件的路径名,服务器将把它的进程ID写入这个文件。
 --general_log_file=file_name
如果你使用以下日志文件选项,它们的值必须和其他每个服务器不同。
 --log_bin[=file_name]
 --slow_query_log_file=file_name
 --log-error[=file_name]
对于日志文件选项的更多讨论,请参见5.4节,”mysql服务器日志”
为了获得更好的性能,可以为每个服务器不同地指定以下选项,以在多个物理磁盘之间分散负载:
 --tmpdir=dir_name
拥有不用的临时目录可以使mysql服务器在哪里创建给定的临时文件时更方便。
如果你想把多个mysql安装在了不同位置,你可以为每个安装使用–basedir=dir_name来指定基目录。这使得每个实例自动使用不同的data目录,日志文件和PID文件,因为每个参数的默认值与基目录有关。这种情况下,你需要指定的选项只有–socket和–port选项。假设您使用tar文件的二进制发行版安装了不同版本的MySQL。 它们安装在不同的位置,因此您可以使用命令 bin/mysqld_safe在其对应的基本目录下启动每次安装的服务器。 mysqld_safe确定传递给mysqld的适当的–basedir选项,并且您只需要为mysqld_safe指定–socket和–port选项。
如以下各节所述,可以通过指定适当的命令选项或设置环境变量来启动其他服务器。 但是,如果您需要更长时间地运行多个服务器,则使用选项文件为每个服务器指定必须唯一的选项值更为方便。–defaults-file选项可用于此目的。
[1]:因本人机器为UNIX,故此节略去不译,可参考官网:
https://dev.mysql.com/doc/refman/8.0/en/multiple-windows-servers.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值