有什么好的资源可以帮助您理解主要引擎上的数据库调优并提高您在该领域的知识?

这个问题的想法是收集始终存在的资源,这样人们就可以有一个“一站式”的好知识商店,同行认可的资源。


通用SQL

本书:SQL性能调优 书籍:SQL调优 书:SQL的艺术 书:重构SQL应用程序 书籍:数据库调优:原理、实验和故障排除技术 使用索引,卢克!—面向开发人员的数据库性能指南

PostgreSQL (wiki)

性能优化 快速PostgreSQL优化 解释分析解释器 PostgreSQL性能提示 本书:PostgreSQL 9.0高性能

MySQL

MySQL的隐藏特性 书籍:高性能MySQL /博客:高性能MySQL 博客:Xaprb (MySQL dba)

甲骨文

如何在StackOverflow上询问Oracle调优问题 如何解释查询的解释计划? Oracle高级调优脚本 Oracle数据库性能调优指南 问汤姆 Oracle数据库SQL参考 书籍:了解Oracle性能 书籍:优化Oracle性能 书籍:解决Oracle性能问题 本书:基于成本的Oracle基础知识

MS SQL Server

SQL Server性能 电子书:高性能SQL Server SO问题:最好的SQL Server性能优化技术是什么? 布伦特欧扎尔的性能调优页 SqlServerPedia的性能调优页面 书:Sql Server 2008内部 如何识别运行缓慢的查询与SQL分析器

Sybase SQL Anywhere

博客:SQL Anywhere 书:SQL Anywhere Studio 9开发人员指南

JDBC

JDBC性能技巧


当前回答

“SQL性能调优”http://books.google.com/books?id=3H9CC54qYeEC&dq=sql+performance+tuning&printsec=frontcover&source=bn&hl=en&ei=1dDoSYmjMOrlnQfX-bSYBw&sa=X&oi=book_result&ct=result&resnum=4涵盖了大多数主要的DBMS——如何编写高性能的跨平台SQL查询等。

其他回答

Xaprb是MySQL dba的必读博客。作者写了一本关于高性能MySQL的书

对于使用Sybase SQL Anywhere的少数人来说,我只能推荐Breck Carter的博客和他的SQL Anywhere Studio 9开发者指南

SO在这里有一个很好的例子:如何解释查询的解释计划?

有时候,一旦发现问题,你需要知道如何解决问题。这将展示如何用基于集合的操作替换表现不佳的游标: http://wiki.lessthandot.com/index.php/Cursors_and_How_to_Avoid_Them

它是特定于SQL Server的,但许多技术也可以转换到其他dbs。

我还要补充一点,除了理论上对数据库进行调优外,还应该使用跟踪SQL调用的分析器对应用程序进行分析。

尽管您的初衷是好的,但还是会有一些不好的调用潜入您的应用程序,通常会导致90%的性能相关问题。

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

你可以在这里找到他的许多详细书籍,都是他惯用的实证测量风格来证明他的观点:http://tsql.solidq.com/books/index.htm

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

Itzik Ben-Gan在stackoverflow上被提到了600多次,但我不敢相信在这个性能调优问题上没有一次提到他。

作为额外的资源,你还可以在youtube上找到一些Itzik谈论性能相关内容的视频。