我有一个 ec2 实例,上面运行着多个独立的 wordpress 站点。我想将每个独立站点的数据库存储在其自己挂载的 ebs 卷上,这样我就可以独立处理每个站点的数据库快照等,这样如果一个站点变得太大,就很容易启动另一个实例并将该站点的数据库数据挂载到它上面。我知道如何将 mysql 的所有数据移动到单独的 ebs 卷,但是如何基于每个数据库进行操作呢?
我还想听听您是否认为这是一个坏主意,或者还有其他选择。
答案1
你可以使用 innodb_file_per_table (https://dev.mysql.com/doc/refman/5.5/en/innodb-parameters.html#sysvar_innodb_file_per_table)。不幸的是,您将获得每个表一个文件,而不是每个数据库一个文件(我不知道 MySQL 中是否有这样的选项)。
通过这种方式,您可以将每个符号链接的每个表文件链接到安装到实例的不同 EBS 卷。
您应该为此使用 EBS 优化实例,以确保您拥有到 EBS 设备的专用网络链接。我更喜欢 PIOPS 设备并只使用其中一个 - 但如果您需要分离快照,我只知道上述方法。
希望有帮助!