![单个 ec2 实例在单独的 EBS 卷上具有多个 mySQL 数据库](https://linux22.com/image/629891/%E5%8D%95%E4%B8%AA%20ec2%20%E5%AE%9E%E4%BE%8B%E5%9C%A8%E5%8D%95%E7%8B%AC%E7%9A%84%20EBS%20%E5%8D%B7%E4%B8%8A%E5%85%B7%E6%9C%89%E5%A4%9A%E4%B8%AA%20mySQL%20%E6%95%B0%E6%8D%AE%E5%BA%93.png)
我有一个 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 设备并只使用其中一个 - 但如果您需要分离快照,我只知道上述方法。
希望有帮助!