17

我目前正在开发一个必须存在于内存可用性非常低的虚拟机上的网站(目前我被告知期望 512mb)。不幸的是,至少在不久的将来,数据库和 Web 应用程序必须是同一台服务器。

现在我在这里阅读了一些问题并尝试进行自己的研究,但有很多选择可供选择。本质上,什么是我可以安装的足够轻巧的数据库服务器?SQL 或 NoSQL 并不重要。它不会是数据库密集型的,但我不想受到我现在选择的任何限制。这意味着,如果可能的话,通往多服务器扩展的道路会很好,但显然不是现阶段的要求。

我目前的想法是 MongoDB 或 MySQL,但我不确定它们是否是最佳选择。

我的 Web 应用程序使用 PHP 在 nginx 上运行,我认为这是目前最好的选择,所以我主要关心的是数据库端。

4

2 回答 2

16

如果您需要最轻量级的数据库,我会说sqlite 3。它是为此任务而设计的,体积小,速度快,根据我的经验,它可靠且易于使用。

我自己不使用 php,但这里似乎有支持

sqlite 几乎支持“标准”sql,除了它不强制类型 - 您可以将列定义为文本,但如果您愿意,可以存储和检索整数值。实际上,这没什么大不了的,只要您不使用此“功能”,您将来可以轻松切换到更大的数据库。

但是,在实践中,我会从 mysql 开始,因为它可能已经安装并且可用。如果它给您带来内存使用问题,请切换到 sqlite。但是对于一个简单的、没有多余装饰的数据库,您不妨从 mysql 开始。

于 2012-04-14T05:04:00.693 回答
5

在关系数据库或面向文档的数据库之间进行选择时,最好关注特定应用程序的数据存储需求。如果更适合关系型数据库的应用程序是在 MongoDB 等面向文档的数据库之上编写的,那么它的效率会降低,并且会消耗更多的资源。

于 2012-04-14T05:00:53.903 回答