AdminAPI 提供了 dba.deploySandboxInstance(
操作,而不是使用生产环境,在生产环境中,每个实例都运行在单独的主机上。 port_number
)port_number
参数是 MySQL 服务器实例侦听连接的 TCP 端口号。 要部署绑定到端口 3310 的新沙箱实例,请执行以下操作:
mysql-js> dba.deploySandboxInstance(3310)
默认情况下,沙箱是在 Unix 系统上的 $HOME/mysql-sandboxes/
目录中创建的。对于 Microsoft Windows 系统,目录是 port
%userprofile%\MySQL\mysql-sandboxes\
。每个沙箱实例都存储在以 port
port_number
命名的目录中。
系统会提示您输入 root 用户的密码。
每个沙箱实例都使用 root 用户和密码,并且在应该一起工作的沙箱实例上,它必须相同。这在生产环境中是不建议的。
要部署另一个沙箱服务器实例,请重复为端口 3310 上的沙箱实例执行的步骤,为每个实例选择不同的端口号。
要更改存储沙箱的目录(例如,在同一主机上运行多个沙箱以进行测试),请使用 MySQL Shell 的 sandboxDir
选项。例如,要在 /home/user/sandbox1
目录中使用沙箱,请执行以下操作:
mysql-js> shell.options.sandboxDir='/home/user/sandbox1'
然后,所有后续的与沙箱相关的操作都将针对在 /home/user/sandbox1
中找到的实例执行。
部署沙箱时,MySQL Shell 会搜索 mysqld 二进制文件,然后使用它创建沙箱实例。您可以通过配置 PATH
环境变量来配置 MySQL Shell 搜索 mysqld 二进制文件的位置。这在将新版本的 MySQL 部署到生产环境之前在本地对其进行测试时非常有用。例如,要使用路径为 /home/user/mysql-latest/bin/
的 mysqld 二进制文件,请执行以下操作:
PATH=/home/user/mysql-latest/bin/:$PATH
然后,从设置了 PATH
环境变量的终端运行 MySQL Shell。您部署的任何沙箱都会使用在配置的路径中找到的 mysqld 二进制文件。
dba.deploySandboxInstance()
操作支持以下选项:
allowRootFrom
配置 root 用户可以从哪个主机连接。默认为root@%
。ignoreSslError
配置沙箱实例上的安全连接。当ignoreSslError
为 true(默认值)时,如果无法提供 SSL 支持,并且服务器实例是在没有 SSL 支持的情况下部署的,则操作期间不会发出任何错误。当ignoreSslError
设置为false
时,沙箱实例将使用 SSL 支持进行部署,如果无法配置 SSL 支持,则会发出错误。mysqldOptions
配置沙箱实例上的附加选项。默认为空字符串,并接受指定选项和值的字符串列表。例如,mysqldOptions: ["lower_case_table_names=1", "report_host="10.1.2.3"]}
。指定的选项将写入沙箱实例的选项文件。portX
配置用于 X 协议连接的端口。默认值为port
值乘以 10 计算得出。该值是介于 1024 和 65535 之间的整数。