我正在使用Python(Django)开发一个web应用程序,我想知道在部署用于生产时,MySQL或PostgreSQL是否更合适.
在一篇podcast页的文章中,Joel说他在MySQL上遇到了一些问题,而且数据不一致.
我想知道是否有人有这样的问题.还有,在性能方面,哪些方面可以轻松调整?
我正在使用Python(Django)开发一个web应用程序,我想知道在部署用于生产时,MySQL或PostgreSQL是否更合适.
在一篇podcast页的文章中,Joel说他在MySQL上遇到了一些问题,而且数据不一致.
我想知道是否有人有这样的问题.还有,在性能方面,哪些方面可以轻松调整?
A note to future readers:下文最后一次编辑是在2008年8月.这是近11年前的编辑.软件可以在不同版本之间快速变化,因此在根据下面的建议 Select DBMS之前,请进行一些研究,看看它是否仍然准确.
较好的
MySQL通常由web主机提供.
PostgreSQL是一款成熟得多的产品.
有this discussion addressing your "better" question个
显然,根据this web page,当并发访问级别较低时,以及当读操作比写操作多得多时,MySQL的速度很快.另一方面,随着负载和读写比的增加,它的可扩展性很低.PostgreSQL在低并发级别时速度相对较慢,但随着负载级别的增加,其可扩展性很好,同时在并发访问之间提供了足够的隔离,以避免在高写/读比率时速度变慢.它接着链接到一些性能比较,因为这些东西非常...对环境敏感.
所以,如果你的决定因素是"which is faster?",那么答案是"这取决于.If it really matters, test your application against both.".如果你真的非常在乎,你可以找两个DBA(每个数据库都有一个专门的DBA),让他们调整数据库中的垃圾,然后 Select .good位DBA的价格令人惊讶;和they are worth every cent.
重要的时候.
它可能不会,所以只需 Select 你喜欢的数据库,然后使用它;使用更多的RAM和CPU、更合适的数据库设计和聪明的存储过程技巧等等,可以买到更好的性能——对于random-website-X来说,所有这些都比纠结于 Select 哪个数据库、MySQL或PostgreSQL,以及从昂贵的DBA处进行专家调优更便宜、更容易.
count
of rows back. The plural of anecdote is not data. He said:
MySQL是我职业生涯中唯一一个遇到数据完整性问题的数据库,在这里,你进行查询,然后得到错误的无意义答案.
他还说:
这只是个轶事.事实上,这是让我感到沮丧的事情之一,关于博客或整个互联网.[...] 有一种奇怪的倾向,就是把轶事变成事实,实际上,作为一个博客作者,我开始对此感到有点内疚