6.5管理员mysql沙箱

本节介绍如何使用Adminapi设置沙箱部署。最初部署和使用MySQL的本地沙盒实例是开始探索管理员的好方法。在部署生产服务器之前,您可以在本地测试功能。Adminapi具有内置功能,可创建正确配置为使用InnoDB Cluster和InnoDB Replicaset在本地部署的方案中使用的Sandbox实例。

重要的

沙箱实例只适合部署和运行在您的本地机器上,用于测试目的。在生产环境中,MySQL Server实例被部署到网络上的各种主机上。看到第6.2.2节,部署生产InnoDB集群想要查询更多的信息。

与生产部署不同,您可以使用实例并通过连接字符串指定它们,Sandbox实例在本地运行在同一台计算机上,以及您运行MySQL shell的同一台计算机。因此,要指定Sandbox实例,请提供MySQL Sandbox实例正在侦听的端口号。

部署沙盒实例

Adminapi提供了每个实例在单独的主机上运行dba.deploySandboxInstance (port_number进行操作。的port_number进行参数是TCP端口号,MySQL Server实例侦听连接。要部署绑定到端口3310的新Sandbox实例,请执行以下操作:

mysql-js> dba.deploysandboxinstance(3310)

默认情况下,沙箱创建在名为$ HOME / mysql-sandboxes /港口在UNIX系统上。对于Microsoft Windows系统,目录是% userprofile % \ MySQL \ mysql-sandboxes \港口。每个Sandbox实例都存储在以后命名的目录中port_number进行

提示root用户的密码。

重要的

每个Sandbox实例都使用root用户和密码,并且在所有应该一起工作的沙箱实例上它必须相同。这不建议生产。

要部署另一个Sandbox服务器实例,请在端口3310处重复遵循沙箱实例的步骤,为每个实例选择不同的端口号。

要更改沙箱存储的目录,例如要在一个主机上运行多个沙箱以进行测试,请使用mysql shell沙盒迪尔选项。例如使用沙箱/home/user/sandbox1目录,问题:

mysql-js > shell.options.sandboxDir =“/ home / user / sandbox1”

然后针对发现的实例执行所有后续的沙箱相关操作/home/user/sandbox1

当您部署沙盒时,MySQL Shell搜索mysqld二进制文件,然后用它来创建沙箱实例。您可以配置MySQL Shell在哪里搜索mysqld通过配置小路环境变量。在部署到生产之前,这可以在本地测试新版本的MySQL是有用的。例如,使用amysqld路径上的二进制/home/user/mysql-latest / bin /问题:

路径= / home / user / mysql-latest / bin /: $路径

然后从终端运行MySQL Shell小路设置环境变量。您部署的任何沙箱然后使用mysqld二进制文件在配置的路径上找到。

以下选项得到支持dba.deploySandboxInstance ()手术:

  • alletrootfrom.配置根用户可以从哪个主机进行连接。默认为根@%

  • ignoreSslError在沙箱实例上配置安全连接。什么时候ignoreSslError是真的,这是默认情况下,如果无法提供SSL支持,则在运行时不会发出错误,并且在没有SSL支持的情况下部署服务器实例。什么时候ignoreSslError设置为false,Sandbox实例使用SSL支持部署,如果无法配置SSL支持,则会发出错误。

  • mysqldoptions.在沙箱实例上配置其他选项。默认为空字符串,并接受指定选项和值的字符串列表。例如MySQLDOPTIONS:[“depard_case_table_names = 1”,“Report_host =”10.1.2.3“]}。指定的选项将写入Sandbox实例的选项文件。

  • portX配置X协议连接使用的端口。属性相乘来计算默认值港口值10。取值范围为1024 ~ 65535的整数。

管理沙盒实例

一旦Sandbox实例运行,就可以使用以下时间随时更改其状态:

  • 停止沙箱实例使用dba.stopsandboxinstance(实例。这与...不同地停止实例dba.killsandboxinstance(实例

  • 启动沙箱实例使用dba.startsandboxinstance(实例

  • 杀死沙箱实例使用dba.killsandboxinstance(实例。这停止了​​实例而不优雅地停止它,并且在模拟意外停止时很有用。

  • 删除一个沙箱实例使用dba.deletesandboxinstance(实例。这完全从文件系统中删除了Sandbox实例。