Ingres est un système de gestion de base de données (SGBD) relationnel, tout comme IBM DB2, Oracle ou MySQL. Ingres signifie : INtelligent Graphic RElational System.
Son concepteur, Michael Stonebraker (en), décida de recommencer le développement à partir de zéro en 1985, mais en continuant à développer les idées d’Ingres. Il se lança dans un projet post-Ingres, qui fut d'abord nommé Postgres, puis, à partir de 1995, PostgreSQL.
Détenu entre 1994 et 2005 par Computer Associates, et revendu depuis à un fond d'investissement, Ingres est devenu un logiciel libre en 2004 ; sa licence est depuis lors la licence publique générale GNU.
Sa dénomination commerciale a changé quasiment à chaque nouvelle version. Chronologiquement :
Il fonctionne essentiellement sur des systèmes UNIX, mais aussi sur Linux, Microsoft Windows et VMS.
Ingres est une alternative réelle aux solutions propriétaires du marché, et une alternative sérieuse aux solutions open sources (fussent-elles entre temps passées dans le giron d'éditeurs propriétaires), de par son adhérence historique au monde de l'IT. De nombreux clients de par le monde utilisent Ingres depuis sa création, et pour des applications stratégiques, sans pouvoir dédire ses qualités.
Depuis que le produit est devenu open source, l'éditeur n'a pas manqué d'idées pour le développer et renforcer la communauté : IceBreaker (la base de données devient un service), les Appliances qui ont suivi (de nombreux partenariats ont été conclus avec des éditeurs tiers tels que JasperSoft, Alfresco, SpagoBI, Redhat/JBoss, Novell), une compatibilité sans cesse accrue avec les technologies largement déployées (Java, PHP - voir EasyIngres - .NET, etc), un comportement au plus près du fonctionnement des autres SGBD (colonnes auto incrémentées, before trigger, tables partitionnées, etc), une qualité, des performances et une stabilité accrue et qui ne se dément pas au fil des années.
Ingres s'installe facilement et très simplement, et surtout de façon identique d'une plateforme à l'autre, assurant ainsi une compatibilité totale et parfaitement ascendante entre divers univers et au fil des versions. Migrer des données d'une version ancienne (par exemple Ingres 6.4) vers une version récente (par exemple Ingres 9.2) se fait simplement et facilement. Il sait se faire oublier, ce qui dans son histoire lui a joué des tours : les modes passent et les compétences aussi, et certaines directions informatiques se trouvent parfois sans compétence connues sur le sujet.
Sa robustesse et sa souplesse ne sont plus à démontrer. Les tables sont nativement organisées sous forme de fichiers situés dans des répertoires (en opposition à une architecture de quelques fichiers contenant toutes les tables de la base), permettant ainsi une extension "on-line" du volume de données possible, ou une récupération ponctuelle de quelques tables seulement. Les seules limites étant les limites OS et systèmes de fichiers.
Même en cas d'arrêt sévère des programmes du serveur, le système est à nouveau en ligne rapidement et les pertes de données sont excessivement rares, dû à son excellente gestion des transactions.
Ingres ne nécessite pas un paramétrage pointu pour fonctionner de façon optimale, il demande par ailleurs un entretien minimal. Entretien qui, même s'il n'est pas assuré régulièrement, commence à faire sentir son absence au bout de plusieurs [longs] mois de mises à jour de la base.