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

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


通用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性能技巧


当前回答

如果您正在使用Oracle数据库,本指南也可能有所帮助。 http://download.oracle.com/docs/cd/B28359_01/server.111/b28274/toc.htm

其他回答

对于Microsoft SQL,我推荐Kalen Delaney等人写的《SQL Server内部》。他们很好地洞察了SQL Server的内部结构,从而让读者了解为什么特定语句可能比其他语句更快。

SQL Server 7.0内部 SQL Server 2000内情 Microsoft SQL Server 2005内部 Microsoft SQL Server 2008内部代码

还有一本书专门介绍SQL Server 2008查询的性能调优: SQL Server性能调优摘录

我也喜欢Paul Randal和Kimberly Tripp在SQLSkills.com上的博客。它们充满了可靠的SQL建议:

保罗的博客 金伯利的博客

这家伙对一个不一样的问题的回答可能是一个好的开始。

MySQL的隐藏特性

PostgreSQL快速优化(查询优化)

简短的阅读,很好地解释了很多事情,并且“工作”是一个真实的例子,这对我们这些学习更好的人来说是很好的。

在看到PostgreSQL的wiki链接后,我想我应该用mysql/oracle文档的链接来编辑这篇文章,这并不是一个真正的优化指南,但这两个都是很好的资源,尤其是mysql的那个。用于优化和任何其他调优功能。

如何用SQL Profiler识别运行缓慢的查询是关于如何识别运行缓慢的查询的一个很好的教程。这将允许一个人将注意力集中在最需要的地方。

首先,我要了解数据库在基本层面上是如何工作的。数据如何存储在磁盘上,创建索引做什么,查询计划优化如何工作,计划如何缓存,缓存的计划何时过期。

如果您能记住所有这些内容,那么关于调优的大多数建议似乎都是显而易见的。

这是一本关于MSSQL的好书

SQL Server内部结构