Mysql 磁盘空间不足

Mysql 磁盘空间不足

我刚刚开发完一个 Rails 应用程序,它以 mysql db 作为后端。
该应用程序适用于高流量,并将存储大量信息。我计划设置自己的 Web 服务器并从中托管网站。

如果将来我的磁盘空间用完了,我会想通过添加更多空间来扩展。
但是,如果我的 mysql 数据库位于 /disk0s1 中,并且通过添加新驱动器,我拥有了更多分区(因此也拥有了更多磁盘空间),那么我该如何扩展我的数据库以将信息存储在这些分区上,同时防止任何信息写入原始分区。我应该使用多个数据库吗?如果是,该怎么做?

如果我选择托管解决方案,我就不会担心这个问题,因为我只需要担心支付额外空间的费用 :)
我一直想知道这些网络主机如何随时添加空间。
我需要进行任何特定的 mysql 配置吗?

答案1

您没有提到您使用的是什么平台 - 我的回答完全与 Linux/Unix 有关,所以如果您想使用 Windows,请丢弃我的回答。

一些文件系统可以增大 - XFS 和 JFS 就是例子 - 因此如果调整了磁盘分区的大小,那么只需简单地调整文件系统大小以容纳额外的空间即可。

如果文件系统无法调整大小,还有其他选择。MySQL 实际上是一个很好的选择,因为它将每个数据库存储在单独的目录中,因此如果一个数据库超出了可用空间,您可以做的是将数据库的目录移动到新分区,并从 MySQL 数据文件夹内符号链接到该目录。

或者您甚至可以符号链接整个 MySQL 目录,因此如果您在具有更多空间的服务器中添加新磁盘,只需将数据目录移动到新磁盘上,从旧路径创建到新路径的符号链接,重新启动 MySQL 就可以了。

您实际上可以在 Windows 中使用 NTFS 挂载点执行类似操作,但您只能将整个驱动器链接到另一个驱动器上的文件夹,而不能像使用 Linux 符号链接那样在单个文件夹/文件级别上进行链接。

相关内容