Datensicherheit
Das RDBMS speichert die relationalen Daten auf einem Datenspeicher. Neben den eigentlichen Daten werden ebenfalls Informationen über die Datenstrukturen und Zugriffsrechte von Benutzern gespeichert. Letztere sind wichtig, um die Datensicherheit zu garantieren. Dazu gehört sowohl Schutz gegen Datenverlust sowie Schutz gegen unerlaubten Zugriff. Die Metadaten eines DBMS werden auch als das Data Dictionary oder Katalog des Systems bezeichnet. Als Metadaten werden Daten bezeichnet, die Informationen über andere Daten enthalten. Bei relationalen Datenbanksystemen sind in diesem Data Dictionary, das als eine Datenbank aufgebaut ist, die Metadaten gespeichert, die die Struktur der normalen Daten der Datenbank beschreiben.
Ein weiterer wichtiger Aspekt von Datenbanken ist das Sichern des Datenbestandes durch Backups. In der Praxis ist dies oft ein nicht zu vernachlässigendes Leistungs-Problem, da während eines Backups die Daten nur sehr eingeschränkt verändert werden dürfen.
Transaktionen
Ein weiterer wichtiger Teil der Datensicherheit ist das Transaktionskonzept, das Daten gegen den parallelen Zugriff mehrerer Benutzer schützt. Andernfalls könnten Daten von verschiedenen Benutzern gleichzeitig geändert werden. Das Ergebnis der Änderungen würde dann vom Zufall abhängen. Vereinfacht dargestellt, sperren Transaktionen (Abfolge einiger Aktionen um die Daten zu ändern) Daten vorübergehend für den Zugriff durch andere Benutzer, bis eine Transaktion beendet wird. Danach werden die geänderten Daten wieder freigegeben.
Datenintegrität
Die Korrektheit der Daten kann durch Constraints sichergestellt werden. Dies sind Regeln im Managementsystem, die beschreiben, wie Daten verändert werden dürfen. Der wichtigste Vertreter bei relationalen Datenbanksystemen ist der Foreign Key Constraint. Dieser verhindert, dass Daten gelöscht werden können, die noch von einer anderen Tabelle benötigt werden.
Anwendungsunterstützung
Zur Unterstützung von Datenbankapplikationen bieten Datenbanksysteme Trigger und Stored Procedures an. Ein Trigger löst eine Aktion in der Datenbank aus, wenn ein bestimmtes Ereignis eingetreten ist, häufig bei Einfüge- oder Änderungsoperationen. Mit Stored Procedures kann man im Datenbanksystem eine Abfolge von Befehlen auf einmal durchführen und am schnellsten Daten ändern.
Sprachen
Das DBS stellt als Schnittstelle eine Datenbanksprache für die folgenden Zwecke zur Verfügung:
- Datenabfrage und -manipulation (DML)
- Verwaltung der Datenbank und Definition der Datenstrukturen (DDL)
- Berechtigungssteuerung (DCL)
Bei den relationalen DBMS sind diese Kategorien in einer Sprache (SQL) vereint, bei anderen Systemen existiert aber durchaus eine Trennung in Form unterschiedlicher Sprachen.
Mehrbenutzerfähigkeit
Für den Zugriff auf die Daten des DBS werden Berechtigungen verwaltet. Ohne Berechtigung kann die entsprechende Operation nicht durchgeführt werden. Für den gleichzeitigen Zugriff mehrerer Anwendungen bzw. Anwender regelt das DBMS Konkurrenzsituationen.
- Es werden Sperren (engl. locks) verwaltet.
- Es werden Systemprotokolle, die Ereignisse im System aufzeichnen, verwaltet.
- Die Daten dürfen nicht gleichzeitig von mehreren Benutzern verändert werden.