Dateien mit Autonomous Database in einem Cloud-Code-Repository verwalten und speichern
Autonomous Database stellt Routinen zum Verwalten und Speichern von Dateien in Cloud-Code-(Git-)Repositorys bereit. Folgende Cloud-Code-Repositorys werden unterstützt: GitHub, AWS CodeCommit und Azure Repos.
Verwandte Themen
Cloud-Code-Repositorys mit Autonomous Database
Das DBMS_CLOUD_REPO
-Package stellt eine einzelne Schnittstelle für den Zugriff auf ein Cloud-Code-Repository aus Autonomous Database bereit.
Die unterstützten Cloud-Code-Repositorys bieten die folgenden Features:
-
Git-Versionskontrollsystem: Git ist eine Software zur Verfolgung von Änderungen in einem beliebigen Set von Dateien. In der Regel wird sie verwendet, um die Arbeit zwischen Programmierern zu koordinieren, die während der Softwareentwicklung gemeinsam Quellcode entwickeln. Ihre Ziele umfassen unter anderem Geschwindigkeit, Datenintegrität und Unterstützung für verteilte, nichtlineare Workflows.
-
Git-Repository: Ein Git-Repository ist ein virtueller Speicher Ihres Projekts. Damit können Sie Versionen Ihres Codes speichern, auf die Sie bei Bedarf zugreifen können.
Die DBMS_CLOUD_REPO
-APIs verwenden ein Repository Handle (REPO
-Objekt). Das Repository Handle ist ein nicht transparentes JSON-Objekt, das ein Cloud-Code-Repository eines bestimmten Cloud-Providers darstellt. Ein REPO
-Objekt kann an verschiedene DBMS_CLOUD_REPO
-APIs übergeben werden. Dieses nicht transparente Objekt stellt sicher, dass DBMS_CLOUD_REPO
-Prozeduren und -Funktionen mit Multicloud-Computing kompatibel sind. Sie müssen Ihren Code nicht ändern, wenn Sie von einem Cloud-Code-Repository-Provider zu einem anderen Cloud-Code-Repository migrieren.
-
Repository-Initialisierungsvorgänge, mit denen Sie ein Repository initialisieren können.
Weitere Informationen finden Sie unter Cloud-Code-Repository initialisieren.
-
Repository-Verwaltungsvorgänge, mit denen Sie ein Repository erstellen, auflisten, aktualisieren oder löschen können.
Weitere Informationen finden Sie unter Cloud-Code-Repository erstellen und verwalten.
-
Verwaltungsvorgänge für Repository-Verzweigungen, mit denen Sie Verzweigungen in einem Repository erstellen, auflisten, zusammenführen oder löschen können.
Weitere Informationen finden Sie unter Verzweigungen in einem Cloud-Code-Repository erstellen und verwalten.
-
Exportieren Sie die Metadaten-DDL aller Objekte in einem Schema in ein Repository.
Weitere Informationen finden Sie unter Schemaobjekte in die Cloud-Code-Repository-Verzweigung exportieren.
-
Vorgänge zur Verwaltung von Repository-Dateien, mit denen Sie Dateien hoch- und herunterladen, aktualisieren und löschen können.
Weitere Informationen finden Sie unter Dateivorgänge mit einem Cloud-Code-Repository verwenden.
-
SQL-Installationsvorgänge, mit denen Sie Metadaten-DDL von Datenbankobjekten in ein Repository exportieren und SQL-Anweisungen aus einem Cloud-Code-Repository in der Datenbank installieren können.
Weitere Informationen finden Sie unter SQL-Installationsvorgänge mit einem Cloud-Code-Repository verwenden.
Cloud-Code-Repository initialisieren
Mit den DBMS_CLOUD_REPO
-Initialisierungsroutinen können Sie ein Cloud-Code-Repository initialisieren. Nachdem Sie ein Handle für das Cloud-Code-Repository erhalten haben, können Sie mit dem Handle auf das Cloud-Code-Repository zugreifen.
So initialisieren Sie ein Cloud-Code-Repository:
Einzelheiten zu den Initialisierungsfunktionen finden Sie unter DBMS_CLOUD_REPO - Initialisierungsvorgänge.
Cloud-Code-Repository erstellen und verwalten
Mit den DBMS_CLOUD_REPO
-Verwaltungsroutinen können Sie ein Cloud-Code-Repository verwalten, indem Sie es erstellen, auflisten, aktualisieren oder löschen.
Rufen Sie zunächst ein Handle für das Cloud-Code-Repository ab, um den Zugriff auf ein Repository zu ermöglichen. Weitere Informationen finden Sie unter Cloud-Code-Repository initialisieren.
Weitere Informationen finden Sie unter DBMS_CLOUD_REPO - Repository-Verwaltungsvorgänge.
Verzweigungen in einem Cloud-Code-Repository erstellen und verwalten
Mit den DBMS_CLOUD_REPO
-Verwaltungsrouten können Sie Cloud-Code-Repository-Verzweigungen verwalten, indem Sie Verzweigungen in einem Repository erstellen, auflisten, zusammenführen oder löschen.
Um Cloud-Code-Repository-Verzweigungsverwaltungsvorgänge auszuführen, müssen Sie zuerst:
-
Zugangsdaten erstellen.
Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.
-
Holen Sie sich einen Griff.
Weitere Informationen finden Sie unter Cloud-Code-Repository initialisieren.
-
Erstellt ein Repository.
Weitere Informationen finden Sie unter Cloud-Code-Repository erstellen und verwalten.
-
Melden Sie sich als ADMIN-Benutzer an, oder verfügen Sie über die Berechtigung
EXECUTE
fürDBMS_CLOUD_REPO
.
Weitere Informationen finden Sie unter DBMS_CLOUD_REPO Repository-Verzweigungsverwaltungsvorgänge.
Schemaobjekte in die Cloud-Code-Repository-Verzweigung exportieren
Mit der Verwaltungsroutine DBMS_CLOUD_REPO
können Sie Metadaten der Objekte in einem Schema in die Verzweigung Cloud-Code-Repository exportieren. Sie können Ihre Liste anhand der Objektnamen oder Objekttypen filtern.
Um Schemadaten zu exportieren, müssen Sie zuerst:
-
Zugangsdaten erstellen.
Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.
-
Holen Sie sich einen Griff.
Weitere Informationen finden Sie unter Cloud-Code-Repository initialisieren.
-
Erstellt ein Repository.
Weitere Informationen finden Sie unter Cloud-Code-Repository erstellen und verwalten.
-
Melden Sie sich als ADMIN-Benutzer an, oder verfügen Sie über die Berechtigung
EXECUTE
fürDBMS_CLOUD_REPO
.
Verwenden Sie die Prozedur EXPORT_SCHEMA
, um Metadaten der Objekte in Ihrem Schema in eine Cloud-Code-Repository-Verzweigung zu exportieren:
BEGIN
DBMS_CLOUD_REPO.EXPORT_SCHEMA
(
repo => l_repo,
schema_name => 'USER1',
file_path => 'myschema_ddl.sql'
filter_list =>
to_clob('[
{ "match_type":"equal",
"type":"table"
},
{ "match_type":"not_equal",
"type":"view"
},
{ "match_type":"in",
"type":"table",
"name": " ''EMPLOYEE_SALARY'',''EMPLOYEE_ADDRESS'' "
},
{ "match_type":"equal",
"type":"sequence",
"name": "EMPLOYEE_RECORD_SEQ"
},
{ "match_type":"like",
"type":"table",
"name": "%OFFICE%"
}
]'
);
);
END;
/
In diesem Beispiel werden die Metadaten des Schemas USER1
in das Repository l_repo
exportiert. Der Export umfasst die Metadaten der Tabellen EMPLOYEE_SALARY
und EMPLOYEE_ADDRESS
sowie alle Tabellennamen, die OFFICE
enthalten. Außerdem exportiert er die EMPLOYEE_RECORD_SEQ
-Sequenz und schließt die Ansichten im Schema aus.
Dateivorgänge mit einem Cloud-Code-Repository verwenden
Mit den DBMS_CLOUD_REPO
-Dateivorgängen können Sie Dateien in einem Cloud-Code-Repository erstellen, abrufen, auflisten, aktualisieren oder löschen.
Rufen Sie ein Handle für das Cloud-Code-Repository ab, bevor Sie die Dateivorgänge verwenden. Weitere Informationen finden Sie unter Cloud-Code-Repository initialisieren.
Außerdem müssen Sie ein Repository erstellen, bevor Sie mit Dateien arbeiten. Weitere Informationen finden Sie unter Cloud-Code-Repository erstellen und verwalten.
Weitere Informationen finden Sie unter DBMS_CLOUD_REPO File Operations.
SQL-Installationsvorgänge mit einem Cloud-Code-Repository verwenden
Mit den DBMS_CLOUD_REPO
-SQL-Installationsvorgängen können Sie SQL-Skripte in einem Cloud-Code-Repository speichern und daraus herunterladen.
Rufen Sie ein Handle für das Cloud-Code-Repository ab, bevor Sie die SQL-Installationsvorgänge verwenden. Weitere Informationen finden Sie unter Cloud-Code-Repository initialisieren.
Außerdem müssen Sie ein Repository erstellen, bevor Sie mit SQL-Installationsvorgängen arbeiten können. Weitere Informationen finden Sie unter Cloud-Code-Repository erstellen und verwalten.
Die Skripte sind als Schemainstallationsskripte und nicht als generische SQL-Skripte vorgesehen:
- Skripte dürfen keine clientspezifischen SQL*Plus-Befehle enthalten.
- Skripte dürfen keine Bind-Variablen oder parametrisierten Skripte enthalten.
- SQL-Anweisungen müssen mit einem Schrägstrich in einer neuen Zeile (/) beendet werden.
- Skripte können DDL-, DML- und PLSQL-Anweisungen enthalten, direkte
SELECT
-Anweisungen werden jedoch nicht unterstützt. Die Verwendung von SELECT in einem PL/SQL-Block wird unterstützt.
SQL-Anweisungen, die mit EXECUTE IMMEDIATE
ausgeführt werden können, funktionieren, solange sie keine Bind-Variablen oder Definitionen enthalten.
Weitere Informationen finden Sie unter DBMS_CLOUD_REPO - SQL-Installationsvorgänge.