mysql - postgresql比较 - 数据库性能调优有哪些资源?



postgresql教程 (18)

http://explain.depesz.com/

PostgreSQL文档中的整个性能提示章节值得一读。



Answer #2

Oracle自己的Tom Kyte在http://asktom.oracle.com上可以想象到的每种类型的性能问题上都拥有出色的存储库。 他通常会花时间重新创建具体问题并给出非常详细的解释。







Answer #8

对于Microsoft SQL,我推荐由Kalen Delaney(et al)所着的名为“Inside SQL Server”的书籍。 它们提供了对SQL Server内部结构的深入了解,从而使读者能够了解为什么特定语句可能比其他语句更快。

在SQL Server 7.0中
在SQL Server 2000内部
在Microsoft SQL Server 2005内部
Microsoft SQL Server 2008内部

还有一本专门用于SQL Server 2008查询性能调优的书: SQL Server性能调优Distilled

我还喜欢SQL Randi和Kimberly Tripp在SQLSkills.com上的博客。 他们充满了坚实的SQL建议:

保罗的博客
Kimberly的博客



Answer #10

对于SQL Server性能调优,Itzik Ben-Gan是一个传奇。

你可以在这里找到他的许多详细的书籍,所有这些都以他惯常的经验测量方式来证明他的情况: http://tsql.solidq.com/books/index.htm : http://tsql.solidq.com/books/index.htm

如果您正在寻找针对t-sql问题的最快解决方案,请在您的谷歌搜索词中添加“itzik”一词。

Itzik Ben-Gan 在这里已经被提及了600多次 ,但我无法相信在这个性能优化问题中,他没有发现任何关于他的提及。

作为额外的资源,您还可以在YouTube上找到Itzik的一些关于性能相关内容的视频。



Answer #12

当我看到这种方式很快看到您在Oracle下调整的SQL语句发生了什么时,我非常高兴。 将下面的第一条SQL语句更改为您的SELECT语句,并在那里保留该提示。

SELECT /*+ GATHER_PLAN_STATISTICS */ * FROM DUAL;

SELECT * FROM TABLE(dbms_xplan.display_cursor( NULL, NULL, 'RUNSTATS_LAST'))
;

PLAN_TABLE_OUTPUT
-----------------------------------------------------
SQL_ID  5z36y0tq909a8, child number 0
-------------------------------------
SELECT /*+ GATHER_PLAN_STATISTICS */ * FROM DUAL

Plan hash value: 272002086

---------------------------------------------------------------------------------------------
| Id  | Operation         | Name | Starts | E-Rows | A-Rows |   A-Time   | Buffers | Reads  |
---------------------------------------------------------------------------------------------
|   1 |  TABLE ACCESS FULL| DUAL |      1 |      1 |      1 |00:00:00.02 |       3 |      2 |
---------------------------------------------------------------------------------------------


12 rows selected.

哪里:

  • 电子行是估计的行。
  • A行是实际行。
  • A-Time是实际时间。
  • 缓冲区是实际的缓冲区。

如果估计的计划与实际执行数量级有所不同,那么您知道您有问题。


Answer #13

我会从理解数据库如何在基本层面工作开始。 数据如何存储在磁盘上,创建索引是做什么的,查询计划优化如何工作,计划如何缓存,计划何时缓存。

如果你能把所有这些都记录下来,那么大多数关于调整的建议似乎都很明显。

这是一本关于MSSQL的好书

SQL Server内部




Answer #16

这是另一个与平台无关的高度重视的书:

Dan Tow的SQL调优:生成最佳执行计划

包含Oracle,MS SQL和IBM DB2的一些具体示例,但涉及的技术也应适用于其他平台。






postgresql