Como ya sabemos, Drupal necesita un gestor de bases de datos para su funcionamiento. Para evitar la dependencia con un gestor de bases de datos en particular, muchas aplicaciones incluyen una capa de abstracción de la base de datos (en inglés, Database abstraction layer), que hace de intermediario entre el sistema y la base de datos.
En este modelo, utilizado también por Drupal, no se realizan llamadas directas a la base de datos, sino que se hacen a través de funciones genéricas definidas por la capa de abstracción de la base de datos. Estas funciones serán siempre iguales, independientemente del gestor de bases de datos utilizado (MySQL, PostgreSQL, Oracle, etc.), lo que nos permite cambiar el tipo de base de datos sin que la aplicación se vea afectada.
Drupal puede ser instalado con diferentes gestores de bases de datos, como MySQL, SQLite, PostgreSQL, Oracle, etc.