新工作和公司使用 PostgreSQL

krs*_*nny 2 postgresql

我在我的所有职业生涯中都使用过 MySQL 和 SQL 服务器。

我将工作的公司使用 PostgreSQL。

曾经/处于类似情况的人能否让我了解最大的区别是什么以及我将使用哪些类型的客户端工具来连接和管理数据库?

谢谢

Sco*_*owe 7

在支持方面,您应该准备好一些非常基本的差异,这些差异与数据库本身无关,而是它们的支持方式。PostgreSQL 支持来自两个,也许三个地方。对于编写代码的人的全面支持,请查看 pgsql-general 邮件列表。使用 postgresql wiki(像这个页面:http : //wiki.postgresql.org/wiki/SlowQueryQuestions) 和文档来弄清楚基础知识,然后发布一个包含尽可能多的相关信息的问题。您通常会在几小时到一天内得到答复,具体取决于您的问题的模糊程度。更快的频道是 IRC 频道(谷歌它),它一直有来自世界各地的一些人。通常没有那么全面的答案,但要快得多。最后,您可以支付商业支持费用,并在电话线的另一端让您付费的人做任何事情,包括登录您的服务器以解决问题。虽然公告板是 MySQL 支持的常见位置,但它们不适用于 PostgreSQL,所以不要指望会出现这种情况。

就代码成熟度和质量而言,PostgreSQL 相当高,您很少会看到 PostgreSQL 的错误导致的崩溃或数据损坏。它对 SQL 规范的解释通常比 MSSQL 或 MySQL 更严格,因此如果您发现这两个数据库之一的数据类型不起作用,则它可能不是合法的 SQL 类型,而是由这些数据库创建的内容(即日期时间或未签名) MySQL 中的整数)。如果您的查询在 MySQL 中运行而不在 PgSQL 中运行,则 MySQL 可能比 SQL 规范实际允许的更宽松,并且 PgSQL 遵循规范。

大多数需要高性能机器的 PostgreSQL 用户运行某种类型的 unix,即 Solaris、BSD、Linux 等。性能和支持。高性能 Windows / PgSQL 机器的用户并不多,而且可能永远不会。它在 Windows 上很稳定,性能也不错,但如果你想要 10k TPS,你最好看看 Unix。

与其他数据库相比,专为 pgsql 构建的 GUI 工具是原始的。大多数 PostgreSQL DBA 使用白板或商业应用程序(如 TOAD)来进行数据建模。OTOH,PostgreSQL 拥有我曾经使用过的任何数据库中绝对最好的命令行界面。学习这两个命令 \h 和 \? 从那里你就设置好了。所有SQL语句的完整语法图都存储在psql命令行界面中,并且有非常好的tab补全功能。psql 用户界面非常像一个 unix 命令外壳,快速而强大,但对于初学者来说有点神秘。不过,学习它是值得的。

在复制方面,最新版本很容易与 MSSQL 服务器匹配,并且主要与 Oracle 匹配。请注意,postgresql 不只有一种复制解决方案。有内置的流式复制,也有简单的 PITR。然后是skype 和Slony 的Londiste,最初由Afilias 的人支付,他们碰巧在pgsql 上运行.info 和.org 域并使用slony 复制。Slony 在很多方面仍然是最成熟的,但也是最复杂的,也是最不宽容的。它不是绝对最快的,但它是最灵活的。如果您需要使用它,预计需要花几周的时间来学习它。

PostgreSQL 的发布周期为 12 到 18 个月,而且这个周期最近正式缩短了,试图保持一年的发布。新版本官方支持 5 年。每个版本通常比上一个版本更快或更强大或两者兼而有之,并且开发非常透明,假设您愿意关注 pgsql-hackers 邮件列表。

PostgreSQL 的优点之一是修复错误的速度。我曾两次向 pgsql-general 列表报告错误,并在 24 小时内获得了补丁。两次测试、安排生产停机时间和应用补丁都比获得补丁花费的时间更长。在 pgsql-general 邮件列表上,一个被很好描述的错误或问题几乎可以立即得到响应。对一个定义不明确的问题的抱怨,含糊不清的抱怨往往会导致震耳欲聋的沉默。

我推荐的两本书是 Greg Smith 的 Performance PostgreSQL 9.0 和同一出版商 Pakit 的 PostgreSQL Admin Cookbook(或类似的书)。对于 pgsql admin / dev / dba 类型,两者都是值得的。


Eri*_*elp 5

几年前我不得不进行更改,但在换工作后能够改回 MSSQL。您可能会开始使用pgAdmin作为 SSMS 的替代品。我不知道 Profiler 的直接替代品,但这个问题可能会有所帮助。如果您没有使用 *nix 系统的经验,习惯不同的安装/配置/维护程序将是一个挑战。