Sie können Ihre Datenbankbenutzer als vom Betriebssystem authentifiziert definieren. Die Oracle_Base- Site von Tim Hall bietet eine gute Einführung in die Vorgehensweise . Sie müssen nicht zulassen, dass sich Benutzer mit SYSDBA-Berechtigungen anmelden. Dies ist ein Notfallrezept.
Melden Sie sich bei der Oracle-Datenbank ohne Benutzername und Kennwort an
Ich möchte mich bei einer Datenbank anmelden, indem ich eine SQL-Datei von einem Unix-Skript aus ausführe, ohne Benutzernamen und Kennwort (als root) anzugeben. Ist das möglich?
Die Datenbank ist Oracle.
4 Antworten auf die Frage
- Beliebte
- Neu
- Mit Kommentaren
- Aktiv
Wenn sich Ihr Benutzer in der Oracle-Gruppe befindet, kann er sich als SYSDBA verbinden.
Beispiel für eine Unix-Umgebung:
$ export ORACLE_SID=MYDB $ sqlplus /nolog SQL*Plus: Release... SP2-0640: Not connected sql> connect / as sysdba Connected SQL> select * from scott.employees ;
Das könnte für einen Stapel ein Overkill sein (abgesehen davon, dass Sie alle Privilegien haben, um Ihre Datenbank zu vermasseln).
Aber AFAIK, das ist die einzige Option.
UPDATE Angesichts der Antwort von DCookie ist dies nicht der einzige Weg. Und wie ich bereits erwähnt und von DCookie unterstrichen habe, ist dies ein sehr riskanter Weg.
Wenn Sie SQL * Plus starten, benötigen Sie einen Benutzernamen und ein Kennwort, um sich bei einem Oracle Database-Schema anzumelden. Ihr Benutzername und Ihr Kennwort identifizieren Sie als berechtigten Benutzer des Oracle Database-Schemas.
Der Datenbankadministrator (DBA) ist dafür verantwortlich, Ihr Datenbankkonto mit den erforderlichen Berechtigungen zu erstellen und Ihnen den Benutzernamen und das Kennwort zu geben, mit denen Sie auf Ihr Konto zugreifen können.
Wenn Sie PostgreSQL verwenden, können Sie in der Datei "pg_hba.conf" die Methode "vertrauen" für Ihr localhost-Netzwerk angeben. Für MySQL mag es etwas Ähnliches geben, ich bin mir nicht sicher (hoffentlich hilft hier jemand, der mit der von Ihnen verwendeten Datenbank vertraut ist, wenn dies nicht PostgreSQL ist).
Verwandte Probleme
-
9
Was ist der Unterschied zwischen den Befehlen "su -s" und "sudo -s"?
-
1
Pausieren Sie alle Aufgaben außer x CPU-intensiven Aufgaben
-
9
X-Schritte in X-Sitzungen "trennen" und "neu anhängen"?
-
4
Verwenden Sie öffentliche Terminals, um sich mit Ihren persönlichen Zugangsdaten anzumelden
-
1
Windows-Datumsrepräsentation
-
9
grep alle .java-Dateien in einem Verzeichnis für eine bestimmte Zeichenfolge
-
1
Ist kill -STOP ein temporärer Befehl?
-
2
Anzahl der Zeilen und Spalten in VT420 ändern?
-
10
Wie kann ich die Bash-Historie durchsuchen und einen Befehl erneut ausführen?
-
2
Kann die Ausgabe eines Befehls an zwei andere Befehle weitergeleitet werden?