Oracle Drop Benutzer

Oracle Drop Benutzer
Als Datenbankadministrator begegnen Sie solche Instanzen, in denen das Entfernen eines bestimmten Benutzer aus einer Oracle -Datenbank von Vorteil ist, unabhängig davon.

In diesem Beitrag wird erläutert, wie Sie den Befehl Drop -Benutzer in Oracle verwenden können, um einen bestimmten Benutzer aus der Datenbank zu löschen.

Oracle Drop User Anweisung

Mit dem Befehl Drop -Benutzer können Sie ein Benutzerkonto aus der Datenbank entfernen. Dies beinhaltet auch das Entfernen aller zugehörigen Schemaobjekte aus der Datenbank.

Das Folgende ist ein Code -Snippet, das die Syntax des Drop -Benutzer -Befehls im Oracle -Server demonstriert:

Benutzer Benutzername fallen lassen [Cascade];

Wir beginnen damit, den Befehl Drop -Benutzer zu berufen, gefolgt vom Benutzernamen des Benutzers, den wir aus der Datenbank entfernen möchten.

Mit der Cascade -Option kann Oracle alle zugeordneten Schema -Objekte wie Tabellen, Ansichten, Funktionen usw. entfernen., Für diesen Benutzer.

Sie können dies auch überwinden, indem Sie alle verknüpften Schema -Objekte entfernen, bevor Sie das Benutzerkonto entfernen. Verwenden Sie den Einfachheit halber die Option Kaskade und erlauben Sie der Datenbank -Engine, die zugehörigen Schema -Objekte zu entfernen, bevor Sie das Zielbenutzungskonto fallen lassen.

In einigen Fällen kann Oracle die Schema -Objekte nicht entfernen, wenn andere Objekte in der Datenbank auf sie verweisen. In einem solchen Fall hat Oracle die Zielreferenzen nur ungültig, bevor der Benutzer entfernt wird. Dadurch wird das Ziel Konto für die Entfernung ohne Beschränkung oder Fehler veröffentlicht.

Denken Sie daran, dass dies die verschiedenen Objekte wie materialisierte Ansichten beeinflussen kann. In ähnlicher Weise wird die Datenbankmotor nicht die Rollen entfernt, die vom Zielbenutzer erstellt wurden.

Beispiel Drop Benutzerbefehlsabbildung

Im Folgenden sind Beispiele aufgeführt, die zeigen, wie ein Datenbankbenutzer in Oracle gelegt werden kann.

Erstellen Sie einen Datenbankbenutzer

Melden Sie sich zunächst bei der Oracle -Datenbank an und erstellen Sie einen neuen Benutzer:

$ sqlplus sys sysdba;
SQL*Plus: Veröffentlichung 19.0.0.0.0 - Produktion am 26. November 02:53:44 2022
Version 19.3.0.0.0
Copyright (C) 1982, 2019, Oracle. Alle Rechte vorbehalten.
Passwort eingeben:
Angeschlossen:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Produktion
Version 19.3.0.0.0

Erstellen Sie einen Benutzer zu Demonstrationszwecken, sobald sie sich auf dem Server angemeldet haben. Sie können diesen Schritt überspringen, wenn Sie bereits einen Zielbenutzer haben, den Sie entfernen möchten.

SQL> User Python erstellen durch password124;
Benutzer erstellt.

Der vorherige Befehl erstellt einen Benutzer ohne Schemaobjekte. In diesem Fall können wir den Befehl Drop -Benutzer ausführen, ohne Fehler zu erhalten oder die zugehörigen Objekte zunächst zu entfernen.

Beispiel 1: Oracle Entfernen Sie den Benutzer ohne zugehörige Schemaobjekte

In diesem Beispiel zeigen wir, wie Sie einen Benutzer ohne verknüpfte Schema -Objekte entfernen, indem wir den Befehl Drop -Benutzer wie folgt aufrufen:

SQL> Drop User Python;
Benutzer fallen gelassen.

Wie Sie sehen können, haben wir den Python -Benutzer erfolgreich entfernt, ohne die Schemaobjekte zu entfernen oder den Kaskadenparameter aufzurufen.

Beispiel 2: Oracle Entfernen Sie den Benutzer mit Schemaobjekten

Um zu demonstrieren, wie der Befehl Drop -Benutzer bei einem Benutzer mit zugehörigen Schema -Objekten verwendet wird, beginnen wir zunächst einen Benutzer mit den Berechtigungen, um eine Tabelle und Sitzung zu erstellen.

Eine Beispielaussage lautet wie folgt:

SQL> Benutzer erstellen python, identifiziert durch password124 quoten unbegrenzt für Benutzer;
Benutzer erstellt.
SQL> Grant Create Table, erstellen Sie eine Sitzung zu Python;
Grant erfolgreich.

Die vorherigen Aussagen Ein Python -Benutzer mit einer unbegrenzten Quote in der Tabelle der Benutzer. Da dies ein Testkonto ist, können Sie alle erforderlichen Quotengröße festlegen.

Sobald der Benutzer eingerichtet ist, melden Sie sich als dieses Konto an und erstellen Sie eine neue Tabelle wie folgt:

SQL> Python/Passwort verbinden124
In Verbindung gebracht.

Erstellen Sie nach der Verbindung eine Tabelle:

Tabelle erstellen sample_data (
ID -Nummer,
First_Name VARCHAR2 (50),
ip_address varchar2 (20),
btc_address varchar2 (50),
Credit_card varchar2 (50),
Kennung varchar2 (40),
Einschränkung Sample_PK Primärschlüssel (ID)
);

Beenden Sie als Nächstes die Benutzersitzung des Python.

SQL> Trennen
Getrennt
SQL> SYS als sysdba verbinden
Passwort eingeben:
In Verbindung gebracht.

Wenn wir versuchen, den Python -Benutzer zu entfernen, indem wir den Befehl Drop -Benutzer aufrufen, erhalten wir eine Nachricht, die uns wie folgt mitteilt, dass wir die zugehörigen Objekte wie folgt kaskade müssen:

SQL> Drop User Python;

Fehlermeldung:

Fehler in Zeile 1:
ORA-01922: Die Kaskade muss angegeben werden, um 'Python' fallen zu lassen

Um den Python -Benutzer zu entfernen, müssen wir zunächst die zugehörige Tabelle fallen oder die Cascade -Option wie folgt angeben:

SQL> Drop -Benutzer Python Cascade;
Benutzer fallen gelassen.

In einem solchen Fall kann Oracle den Benutzer und die zugehörigen Schema -Objekte entfernen.

Abschluss

In diesem Beitrag haben wir die Verwendung des Drop -Benutzerbefehls in Oracle -Datenbanken besprochen und veranschaulicht. Verwenden Sie den Befehl Drop -Benutzer, um einen Benutzer ohne zugeordnete Schema -Objekte aus der Datenbank zu entfernen. Wenn der Benutzer Schema -Objekte verknüpft hat, geben Sie die Cascade -Option ein, um den Benutzer und die zugehörigen Objekte zu entfernen.