DBMS_CLOUD_ADMIN-Package
In diesem Abschnitt werden die DBMS_CLOUD_ADMIN-Unterprogramme behandelt, die mit der autonomen KI-Datenbank bereitgestellt werden.
| Unterprogramm | Beschreibung |
|---|---|
| ATTACH_FILE_SYSTEM-Prozedur | Dieses Verfahren hängt ein Dateisystem in einem Verzeichnis Ihrer Datenbank an. |
| Prozedur CREATE_DATABASE_LINK | Mit dieser Prozedur wird ein Datenbanklink zu einer Zieldatenbank erstellt. Es gibt Optionen zum Erstellen eines Datenbanklinks zu einer anderen autonomen KI-Datenbankinstanz, zu einer Oracle Database, die keine autonome KI-Datenbank ist, oder zu einer Nicht-Oracle Database, die eine von Oracle verwaltete heterogene Konnektivität verwendet. |
| DETACH_FILE_SYSTEM-Prozedur | Bei diesem Verfahren wird ein Dateisystem von einem Verzeichnis in der Datenbank getrennt. |
| Prozedur DISABLE_EXTERNAL_AUTHENTICATION | Diese Prozedur deaktiviert die externe Authentifizierung für die Instanz der autonomen KI-Datenbank. |
| DROP_DATABASE_LINK - Prozedur | Bei diesem Verfahren wird ein Datenbanklink gelöscht. |
| Prozedur ENABLE_EXTERNAL_AUTHENTICATION | Mit dieser Prozedur kann sich ein Benutzer mit dem angegebenen externen Authentifizierungsschema bei der autonomen KI-Datenbank anmelden. |
ATTACH_FILE_SYSTEM-Prozedur
Mit diesem Verfahren wird ein Dateisystem in der Datenbank angehängt.
Die Prozedur DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM hängt ein Dateisystem in Ihrer Datenbank an und speichert Informationen zum Dateisystem in der Ansicht DBA_CLOUD_FILE_SYSTEMS.
Syntax
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
file_system_name IN VARCHAR2,
file_system_location IN VARCHAR2,
directory_name IN VARCHAR2,
description IN VARCHAR2 DEFAULT NULL,
params IN CLOB DEFAULT NULL
);
Parameter
| Parameter | Beschreibung |
|---|---|
file_system_name |
Gibt den Namen des Dateisystems an. Dieser Parameter ist obligatorisch. |
file_system_location |
Gibt den Speicherort des Dateisystems an. Der Wert, den Sie mit Hinweis: Sie können einen FQDN oder eine IP-Adresse verwenden. Beispiel:
Dieser Parameter ist obligatorisch. |
directory_name |
Gibt den Verzeichnisnamen für das angehängte Dateisystem an. Das Verzeichnis muss vorhanden sein. Dieser Parameter ist obligatorisch. |
description |
(Optional) Liefert eine Beschreibung der Aufgabe. |
params |
Eine JSON-Zeichenfolge, die einen zusätzlichen Parameter für das Dateisystem bereitstellt.
Standardwert: 3 |
Beispiele
Beispiel: Anhängen an ein NFSv3-Dateisystem:
BEGIN
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
file_system_name => 'FSS',
file_system_location => 'myhost.sub000445.myvcn.oraclevcn.com:/results',
directory_name => 'FSS_DIR',
description => 'Source NFS for sales data'
);
END;
/
Beispiel: Anhängen an ein NFSv4-Dateisystem:
BEGIN
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
file_system_name => 'FSS',
file_system_location => 'myhost.sub000445.myvcn.oraclevcn.com:/results',
directory_name => 'FSS_DIR',
description => 'Source NFS for sales data',
params => JSON_OBJECT('nfs_version' value 4)
);
END;
/
Verwendungshinweise
-
Um diese Prozedur ausführen zu können, müssen Sie als ADMIN-Benutzer angemeldet sein oder die Berechtigung
EXECUTEfürDBMS_CLOUD_ADMINbesitzen. -
Sie benötigen die Berechtigung
WRITEfür das Verzeichnisobjekt in der Datenbank, um ein Dateisystem mitDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEManzuhängen. -
Die Prozedur
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMkann einen privaten File Storage Service nur in Datenbanken anhängen, in denen private Endpunkte aktiviert sind.Weitere Informationen finden Sie unter OCI File Storage Service und Entwicklungssystem für den Zugriff auf die Datenbank konfigurieren.
-
Mit der Prozedur
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMwird der Hostname des Netzwerkdateisystems im virtuellen Cloud-Netzwerk (VCN) des Kunden gesucht. Der Fehler"ORA-20000: Mounting NFS fails"wird zurückgegeben, wenn der im Speicherort angegebene Hostname nicht gefunden werden kann. -
Oracle Cloud Infrastructure File Storage verwendet NFSv3 zum Teilen
-
Wenn Sie Daten an Nicht-Oracle Cloud Infrastructure-Dateispeichersysteme anhängen, unterstützt diese Prozedur NFSv3 und NFSv4
-
Wenn ein NFS-Server angehängt ist, der NFSv3 verwendet, und die NFS-Version auf NFSv4 im NFS-Server aktualisiert wird, müssen Sie
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMund dannDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMausführen (mit dem Parameterparams, wobeinfs_versionauf 4 gesetzt ist). Dadurch wird NFS mit dem entsprechenden Protokoll verbunden, sodass Autonomous AI Database auf den NFSv4-Server zugreifen kann. Ohne Trennen und erneutes Anhängen ist der Zugriff auf den NFS-Server nicht möglich. Möglicherweise wird ein Fehler wie"Protocol not supported"angezeigt.
Prozedur CREATE_DATABASE_LINK
Mit dieser Prozedur wird ein Datenbanklink zu einer Zieldatenbank im Schema erstellt, das die API aufruft.
Die überladenen Formulare unterstützen Folgendes:
-
Wenn Sie den Parameter
gateway_paramsverwenden, können Sie einen Datenbanklink mit von Oracle verwalteter heterogener Konnektivität erstellen, bei der der Link zu einer unterstützten Nicht-Oracle-Datenbank besteht. -
Wenn Sie den Parameter
rac_hostnamesverwenden, können Sie einen Datenbanklink von einer autonomen KI-Datenbank auf einem privaten Endpunkt zu einer Oracle RAC-Zieldatenbank erstellen. In diesem Fall geben Sie mit dem Parameterrac_hostnamesdie Hostnamen eines oder mehrerer einzelner Knoten der Oracle RAC-Zieldatenbank an.
Syntax
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
db_link_name IN VARCHAR2,
hostname IN VARCHAR2,
port IN NUMBER,
service_name IN VARCHAR2,
ssl_server_cert_dn IN VARCHAR2 DEFAULT,
credential_name IN VARCHAR2 DEFAULT,
directory_name IN VARCHAR2 DEFAULT,
gateway_link IN BOOLEAN DEFAULT,
public_link IN BOOLEAN DEFAULT,
private_target IN BOOLEAN DEFAULT
gateway_params IN CLOB DEFAULT);
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
db_link_name IN VARCHAR2,
rac_hostnames IN CLOB,
port IN NUMBER,
service_name IN VARCHAR2,
ssl_server_cert_dn IN VARCHAR2 DEFAULT,
credential_name IN VARCHAR2 DEFAULT,
directory_name IN VARCHAR2 DEFAULT,
gateway_link IN BOOLEAN DEFAULT,
public_link IN BOOLEAN DEFAULT,
private_target IN BOOLEAN DEFAULT);
Parameter
| Parameter | Beschreibung |
|---|---|
db_link_name |
Der Name des zu erstellenden Datenbank-Links. |
hostname |
Der Hostname für die Zieldatenbank. Die Angabe von Wenn Sie eine Verbindung mit einer von Oracle verwalteten heterogenen Konnektivität angeben, indem Sie den Parameter
Verwenden Sie diesen Parameter oder In der Eingabe |
rac_hostnames |
Gibt Hostnamen für die Oracle RAC-Zieldatenbank an. Der Wert ist ein JSON-Array, das einen oder mehrere individuelle Hostnamen für die Knoten der Oracle RAC-Zieldatenbank angibt. Mehrere Hostnamen können in JSON übergeben werden, getrennt durch ein " Wenn das Ziel eine Oracle RAC-Datenbank ist, geben Sie mit dem Parameter Wenn Sie im Parameter Verwenden Sie diesen Parameter oder Die Angabe von |
port |
Gibt den Port für die Verbindungen zur Zieldatenbank an. Wenn Sie eine Verbindung mit einer von Oracle verwalteten heterogenen Konnektivität mit dem Parameter
|
service_name |
Die
Wenn Sie mit dem Parameter |
ssl_server_cert_dn |
Der im Serverzertifikat gefundene DN-Wert. Die von Oracle verwaltete heterogene Konnektivität ist mit einem Wallet vorkonfiguriert, das die meisten gängigen vertrauenswürdigen Root- und Zwischen-SSL-Zertifikate enthält. Öffentlicher Endpunktlink zu einem autonomen KI-Datenbankziel ohne Wallet: So stellen Sie eine Verbindung zu einem autonomen KI-Datenbankziel auf einem öffentlichen Endpunkt ohne Wallet (TLS) her:
Privater Endpunktlink ohne Wallet: So stellen Sie eine Verbindung zu Oracle Database auf einem privaten Endpunkt ohne Wallet her:
|
credential_name |
Der Name der gespeicherten Zugangsdaten, die mit DBMS_CLOUD.CREATE_CREDENTIAL erstellt wurden. Dies sind die Zugangsdaten für den Zugriff auf die Zieldatenbank. |
directory_name |
Das Verzeichnis für die Datei Die von Oracle verwaltete heterogene Konnektivität ist mit einem Wallet vorkonfiguriert, das die meisten gängigen vertrauenswürdigen Root- und Zwischen-SSL-Zertifikate enthält. Der Parameter Öffentlicher Endpunktlink zu einem autonomen KI-Datenbankziel ohne Wallet: So stellen Sie eine Verbindung zu einer autonomen KI-Datenbank auf einem öffentlichen Endpunkt ohne Wallet (TLS) her:
Um eine Verbindung zu einer autonomen KI-Datenbank mit TCP herzustellen, muss der Parameter Privater Endpunktlink ohne Wallet: So stellen Sie eine Verbindung zu Oracle Database-Zielen auf einem privaten Endpunkt ohne Wallet her:
|
gateway_link |
Gibt an, ob der Datenbanklink zu einer anderen Oracle Database oder zu einem Oracle Database Gateway erstellt wird. Wenn Wenn Wenn Der Standardwert für diesen Parameter ist |
public_link |
Gibt an, ob der Datenbanklink als öffentlicher Datenbanklink erstellt wird. Um Der Standardwert für diesen Parameter ist |
private_target |
Wenn ein Datenbanklink auf einen Hostnamen zugreift, der in einem VCN-DNS-Server aufgelöst werden muss, geben Sie den Parameter Wenn Der Standardwert für diesen Parameter ist |
gateway_params |
Geben Sie den Parameter mit dem Formular Beispiel:
Wenn Wenn |
Verwendungshinweise
-
Wenn Sie den Parameter
gateway_paramsangeben, werden für einigedb_type-Werte zusätzlichegateway_params-Parameter unterstützt:db_typeZusätzliche gateway_params-Wertegoogle_analyticsWenn db_typegoogle_analyticsist, müssen die angegebenen Zugangsdaten Google OAuth-Zugangsdaten sein.(gcp_oauth2)Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.google_bigqueryWenn
db_typegoogle_bigqueryist, müssen die angegebenen Zugangsdaten Google OAuth-Zugangsdaten sein (gcp_oauth2)Weitere Informationen finden Sie unter CREATE_CREDENTIAL-Prozedur).Wenn
db_typegoogle_bigqueryist, ist der Parameterprojectgültig. Dieser Parameter gibt den Projektnamen fürgoogle_bigqueryan und ist erforderlich.Der Tabellenname, den Sie angeben, wenn Sie
SELECTmit Google BigQuery verwenden, muss in Anführungszeichen stehen. Beispiel:sql SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINKhiveWenn db_typehiveist, ist der Parameterhttp_pathgültig. Dieser Parameter gibt den HttpPath-Wert an, falls erforderlich, um eine Verbindung zur Hive-Instanz herzustellen.salesforceWenn
db_typesalesforceist, ist der Parametersecurity_tokengültig. Bei einem Sicherheitstoken wird die Groß-/Kleinschreibung beachtet. Für den Zugriff auf Salesforce ist die Angabe einessecurity_token-Wertes erforderlich. Beispiel:gateway_params => JSON_OBJECT(
'db_type' value 'salesforce',
'security_token' value 'security_token_value' )Weitere Informationen finden Sie unter Sicherheitstoken zurücksetzen.
servicenowUm eine Verbindung zu ServiceNow herzustellen und Daten abzurufen, müssen Sie die Gatewayparameter
directory_nameundfile_nameangeben. Diese Parameter geben eine Modelldatei (REST-Konfigurationsdatei) an, mit der die JSON-Antwort dem relationalen Modell zugeordnet wird. Die Modelldatei gibt die Endpunkte, die Tabellenzuordnung und den HTTP-Antwortcode für die Verarbeitung der JSON-Antwort an. Weitere Informationen finden Sie unter Syntax der Modelldatei und Beispielmodelldatei.Wenn Sie den Parameter
gateway_paramsmitdb_typeservicenowverwenden, werden zwei Optionen unterstützt:Basisauthentifizierung: Sie müssen den Parameter
gateway_paramsdb_typemit dem Wert'servicenow'angeben und die Parameterdirectory_nameundfile_namezusammen mit Zugangsdaten des Typs Benutzername/Kennwort angeben.OAuth 2.0-Authentifizierung: Sie müssen den Parameter
gateway_paramsdb_typemit dem Wert'servicenow'und den Parameterndirectory_name,file_nameundtoken_urisowie den OAuth-Typzugangsdaten angeben.
Der Parameter
directory_namegibt das Verzeichnis mit der ServiceNow-REST-Konfigurationsdatei an. Sie können dieses Verzeichnis wie folgt erstellen:create or replace directory servicenow_dir as 'SERVICENOW_DIR';Rufen Sie die ServiceNow-REST-Konfigurationsdatei ab, und laden Sie sie in das angegebene Verzeichnis herunter. Beispiel:
exec DBMS_CLOUD.get_object('servicenow_dir_cred',
'https://objectstorage.<...>/servicenow.rest','SERVICENOW_DIR');Setzen Sie den Wert
file_nameauf den Namen der heruntergeladenen REST-Konfigurationsdatei "servicenow.rest".Anschließend können Sie die ServiceNow-REST-Konfigurationsdatei entweder mit Basisauthentifizierung oder mit OAuth2.0 verwenden.
snowflakeWenn
db_typeSNOWFLAKEist, sind die optionalen Parameterrole,schemaundwarehousegültig. Diese Werte geben einen anderen Schema-, Rollen- oder Warehouse-Wert als den Standardwert an. Beispiel:gateway_params => JSON_OBJECT(
'db_type' value 'snowflake',
'role' value 'ADMIN',
'schema' value 'PUBLIC',
'warehouse' value 'TEST'
) -
Wenn Sie den Parameter
private_targetverwenden, beachten Sie, dass Datenbanklinks von einer autonomen KI-Datenbank zu einem Datenbankservice, der sich auf einem privaten Endpunkt befindet, nur in kommerziellen Regionen und US-Regierungsregionen unterstützt werden.Diese Funktion ist in allen kommerziellen Regionen standardmäßig aktiviert.
Dieses Feature ist standardmäßig in US-Regierungsregionen für neu bereitgestellte Datenbanken aktiviert.
Wenn Sie Datenbanklinks aus einer autonomen KI-Datenbank zu einem Ziel in einer US-Regierungsregion erstellen möchten, reichen Sie für vorhandene US-Regierungsdatenbanken auf einem privaten Endpunkt eine Serviceanfrage unter Oracle Cloud Support ein, und fordern Sie an, das Feature zum Verknüpfen der privaten Endpunktdatenbank in Regierungsregionen zu aktivieren.
Die Regionen der US-Regierung umfassen:
-
Wenn Sie eine Verbindung zu einer Nicht-Oracle-Datenbank herstellen, wird die Datenbankverknüpfung nur unterstützt, wenn über eine öffentliche IP oder einen öffentlichen Hostnamen auf die Zieldatenbank zugegriffen werden kann.
-
Um
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKmit einem anderen Benutzer als ADMIN auszuführen, müssen Sie diesem Benutzer die BerechtigungenEXECUTEundCREATE DATABASE LINKerteilen. Beispiel: Führen Sie den folgenden Befehl als ADMIN aus, umatpc_userBerechtigungen zu erteilen:GRANT EXECUTE ON DBMS_CLOUD_ADMIN TO atpc_user; GRANT CREATE DATABASE LINK TO atpc_user;Wenn Sie außerdem einen Datenbanklink in einem anderen Schema als dem ADMIN-Schema erstellen, z.B. in einem Schema namens
atpc_user, muss das Schemaatpc_userEigentümer der Zugangsdaten sein, die Sie mitDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKverwenden. -
Pro Verzeichnis, das mit dem Parameter
directory_nameangegeben ist, ist nur eine Wallet-Datei gültig. Sie können jeweils nur einecwallet.ssoin das Verzeichnis hochladen, das Sie für Wallet-Dateien auswählen. Das bedeutet, dass Sie mit einercwallet.ssoin einem Verzeichnis nur Datenbanklinks zu den Datenbanken erstellen können, für die das Wallet in diesem Verzeichnis gültig ist. Um mehrerecwallet.sso-Dateien mit Datenbanklinks zu verwenden, müssen Sie zusätzliche Verzeichnisse erstellen und jedecwallet.ssoin einem anderen Verzeichnis ablegen.Informationen zum Erstellen von Verzeichnissen finden Sie unter Verzeichnis in autonomer KI-Datenbank erstellen.
-
Um einen Datenbanklink zu einer autonomen KI-Datenbank zu erstellen, setzen Sie
GLOBAL_NAMESin der Quelldatenbank (nicht autonome KI-Datenbank) aufFALSE.ALTER SYSTEM SET GLOBAL_NAMES = FALSE;System altered.SHOW PARAMETER GLOBAL_NAMESNAME TYPE VALUE ---------------------- ----------- ----------- global_names boolean FALSE -
Wenn der Parameter
private_targetTRUElautet, gibt der Parameterhostnameeinen privaten Host innerhalb des VCN an.
Beispiele
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'DB_LINK_CRED',
username => 'adb_user',
password => 'password');
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
db_link_name => 'SALESLINK',
hostname => 'adb.eu-frankfurt-1.oraclecloud.com',
port => '1522',
service_name => 'example_medium.atpc.example.oraclecloud.com',
ssl_server_cert_dn => 'CN=atpc.example.oraclecloud.com,OU=Oracle BMCS FRANKFURT,O=Oracle Corporation,L=Redwood City,ST=California,C=US',
credential_name => 'DB_LINK_CRED');
END;
/
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'AWS_REDSHIFT_LINK_CRED',
username => 'NICK',
password => '*password*'
);
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
db_link_name => 'AWSREDSHIFT_LINK',
hostname => 'example.com',
port => '5439',
service_name => '*example_service_name*',
ssl_server_cert_dn => NULL,
credential_name => 'AWS_REDSHIFT_LINK_CRED',
gateway_params => JSON_OBJECT('db_type' value 'awsredshift'));
END;
/
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'PRIVATE_ENDPOINT_CRED',
username => 'db_user',
password => '*password*'
);
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
db_link_name => 'PRIVATE_ENDPOINT_DB_LINK',
hostname => '*exampleHostname*',
port => '1521',
service_name => '*exampleServiceName*',
credential_name => 'PRIVATE_ENDPOINT_CRED',
ssl_server_cert_dn => NULL,
directory_name => NULL,
private_target => TRUE);
END;
/
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'GOOGLE_BIGQUERY_CRED',
params => JSON_OBJECT( 'gcp_oauth2' value JSON_OBJECT(
'client_id' value 'client_i*',
'client_secret' value 'client_secret',
'refresh_token' value 'refresh_token' )));
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
db_link_name => 'GOOGLE_BIGQUERY_LINK',
hostname => 'example.com',
port => '443',
service_name => 'example_service_name',
credential_name => 'GOOGLE_BIGQUERY_CRED',
gateway_params => JSON_OBJECT(
'db_type' value 'google_bigquery',
'project' value 'project_name1' ));
END;
/
Der Tabellenname, den Sie angeben, wenn Sie SELECT mit Google BigQuery oder Google Analytics verwenden, muss in Anführungszeichen stehen. Beispiel:
SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINK
Verwenden Sie den Parameter rac_hostnames mit einer Oracle RAC-Zieldatenbank auf einem privaten Endpunkt.
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'DB_LINK_CRED1',
username => 'adb_user',
password => 'password');
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
db_link_name => 'SALESLINK',
rac_hostnames => '["sales1-svr1.example.adb.us-ashburn-1.oraclecloud.com",
"sales1-svr2.example.adb.us-ashburn-1.oraclecloud.com",
"sales1-svr3.example.adb.us-ashburn-1.oraclecloud.com"]',
port => '1522',
service_name => 'example_high.adb.oraclecloud.com',
ssl_server_cert_dn => 'CN=adb.example.oraclecloud.com,OU=Oracle BMCS FRANKFURT,O=Oracle Corporation,L=Redwood City,ST=California,C=US',
credential_name => 'DB_LINK_CRED1',
directory_name => 'EXAMPLE_WALLET_DIR',
private_target => TRUE);
END;
/
DETACH_FILE_SYSTEM-Prozedur
Bei diesem Verfahren wird ein Dateisystem von der Datenbank getrennt.
Die Prozedur DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM trennt ein Dateisystem von der Datenbank. Außerdem werden mit der Prozedur DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM die Informationen zum Dateisystem aus der Ansicht DBA_CLOUD_FILE_SYSTEMS entfernt.
Syntax
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM(
file_system_name IN VARCHAR2
);
Parameter
| Parameter | Beschreibung |
|---|---|
file_system_name |
Gibt den Namen des Dateisystems an. Dieser Parameter ist obligatorisch. |
Beispiel
BEGIN
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
file_system_name => 'FSS'
);
END;
/
Verwendungshinweise
-
Um diese Prozedur ausführen zu können, müssen Sie als ADMIN-Benutzer angemeldet sein oder die Berechtigung
EXECUTEfürDBMS_CLOUD_ADMINbesitzen. -
Sie benötigen die Berechtigung
WRITEfür das Verzeichnisobjekt in der Datenbank, um ein Dateisystem mit der ProzedurDBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMvon einem Verzeichnis zu trennen. -
Die Prozedur
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMkann einen privaten File Storage Service nur in Datenbanken trennen, für die private Endpunkte aktiviert sind.Weitere Informationen finden Sie unter OCI File Storage Service und Entwicklungssystem für den Zugriff auf die Datenbank konfigurieren.
-
Mit der Prozedur
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMwird der Hostname des Netzwerkdateisystems im virtuellen Cloud-Netzwerk (VCN) des Kunden gesucht. Der Fehler"ORA-20000: Mounting NFS fails"wird zurückgegeben, wenn der im Speicherort angegebene Hostname nicht gefunden werden kann.
Prozedur DISABLE_EXTERNAL_AUTHENTICATION
Deaktiviert die Benutzerauthentifizierung mit externen Authentifizierungsschemas für die Datenbank.
Syntax
DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;
Exceptions
| Ausnahme | Fehler | Beschreibung |
|---|---|---|
invalid_ext_auth |
ORA-20004 |
Eine detaillierte Erläuterung finden Sie in der beigefügten Meldung. |
Beispiel
BEGIN
DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;
END;
/
PL/SQL procedure successfully completed.
DROP_DATABASE_LINK - Prozedur
Bei diesem Verfahren wird ein Datenbanklink gelöscht.
Syntax
DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK(
db_link_name IN VARCHAR2,
public_link IN BOOLEAN DEFAULT);
Parameter
| Parameter | Beschreibung |
|---|---|
db_link_name |
Der Name des zu löschenden Datenbank-Links. |
public_link |
Um Der Standardwert für diesen Parameter ist |
Beispiel
BEGIN
DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK(
db_link_name => 'SALESLINK' );
END;
/
Verwendungshinweise
Nachdem Sie mit einem Datenbanklink fertig sind und DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK ausgeführt haben, um die Sicherheit der Oracle-Datenbank zu gewährleisten, entfernen Sie alle gespeicherten Wallet-Dateien. Beispiel:
- Entfernen Sie die Wallet-Datei im Objektspeicher.
- Verwenden Sie
DBMS_CLOUD.DELETE_FILE, um die Wallet-Datei aus dem Verzeichnisdata_pump_diroder aus dem benutzerdefinierten Verzeichnis zu entfernen, in das die Wallet-Datei hochgeladen wurde.
Prozedur ENABLE_EXTERNAL_AUTHENTICATION
Ermöglichen Sie Benutzern die Anmeldung bei der Datenbank mit externen Authentifizierungsschemas.
Syntax
DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
type IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE,
params IN CLOB DEFAULT NULL
);
Parameter
| Parameter | Beschreibung |
|---|---|
type |
Gibt den externen Authentifizierungstyp an. Gültige Werte : oder .
|
force |
(Optional) Setzen Sie ein aktuell aktiviertes externes Authentifizierungsschema außer Kraft. Gültige Werte sind Der Standardwert ist |
params |
Eine JSON-Zeichenfolge, die zusätzliche Parameter für die externe Authentifizierung bereitstellt.
|
Exceptions
| Ausnahme | Fehler | Beschreibung |
|---|---|---|
invalid_ext_auth |
ORA-20004 |
Eine detaillierte Erläuterung finden Sie in der beigefügten Meldung. |
Verwendungshinweise
-
Wenn bei
typeOCI_IAMder Resource Principal in der Instanz der autonomen KI-Datenbank nicht aktiviert ist, aktiviert diese Routine den Resource Principal mitDBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL. -
Diese Prozedur setzt die Systemparameter
IDENTITY_PROVIDER_TYPEundIDENTITY_PROVIDER_CONFIGauf die erforderlichen Benutzer, um mit der Oracle Cloud Infrastructure Identity and Access Management-Authentifizierung und -Autorisierung auf die Instanz zuzugreifen.
Beispiele
Beispiel: OCI_IAM-Authentifizierung aktivieren
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
type => 'OCI_IAM',
force=> TRUE );
END;
/
Beispiel: CMU-Authentifizierung für Microsoft Active Directory aktivieren
Sie übergeben einen Verzeichnisnamen, der die CMU-Konfigurationsdateien enthält, über das JSON-Argument params.
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
type => 'CMU',
force => TRUE,
params => JSON_OBJECT('directory_name' value 'CMU_DIR'); // CMU_DIR directory object already exists
END;
/
Sie übergeben eine Standort-URI, die auf einen Object Storage-Speicherort verweist, der CMU-Konfigurationsdateien enthält, über das JSON-Argument params.
BEGIN
DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
type => 'CMU',
params => JSON_OBJECT('location_uri' value 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
'credential_name' value 'my_credential_name')
);
END;
/
Beispiel: Azure AD-Authentifizierung aktivieren
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
type => 'AZURE_AD',
force => TRUE,
params => JSON_OBJECT( 'tenant_id' VALUE '....',
'application_id' VALUE '...',
'application_id_uri' VALUE '.....' ));
END;
/
Beispiel: Kerberos-Authentifizierung aktivieren
Sie übergeben einen Verzeichnisnamen, der Kerberos-Konfigurationsdateien enthält, über das JSON-Argument params.
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
type => 'KERBEROS',
force => TRUE,
params => JSON_OBJECT('directory_name' value 'KERBEROS_DIR'); // KERBEROS_DIR directory object already exists
END;
/
Sie übergeben eine Standort-URI, die auf einen Object Storage-Speicherort verweist, der Kerberos-Konfigurationsdateien enthält, über das JSON-Argument params:
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
type => 'KERBEROS',
force => TRUE,
params => JSON_OBJECT('location_uri' value 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
'credential_name' value 'my_credential_name');
END;
/
Sie übergeben einen Servicenamen mit dem kerberos_service_name im JSON-Argument params:
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
type => 'KERBEROS',
force => TRUE,
params => JSON_OBJECT('directory_name' value 'KERBEROS_DIR', // KERBEROS_DIR directory object already exists
'kerberos_service_name' value 'oracle' ));
END;
/
Nachdem Kerberos in Ihrer autonomen KI-Datenbankinstanz aktiviert wurde, zeigen Sie den Kerberos-Servicenamen mit der folgenden Abfrage an:
SELECT SYS_CONTEXT('USERENV','KERBEROS_SERVICE_NAME') FROM DUAL;
DBMS_CLOUD_ADMIN-Ausnahmen
In der folgenden Tabelle werden Ausnahmen für DBMS_CLOUD_ADMIN beschrieben.
| Ausnahme | Code | Beschreibung |
|---|---|---|
invalid_service |
20.001 | Es wurde ein ungültiger Service angegeben. |
service_not_exist |
20.002 | Ein angegebener Service ist nicht vorhanden. |
default_service |
20.003 | Ein angegebener Service kann nicht geändert werden. |
invalid_char_set |
20.029 | Fehlende Vorbedingung oder ungültiger (nationaler) Zeichensatz. |
invalid_enc_key_attr |
20.030 | Fehlendes oder ungültiges Argument für Schlüsselverwaltung. |
Already Using Oracle Managed Key |
0 | Die Datenbank verwendet bereits einen von Oracle verwalteten Schlüssel. Sie versuchen, die Prozedur aufzurufen, während Sie bereits einen von Oracle verwalteten Schlüssel verwenden. |
Argument Provided for the procedure |
ORA-0000 | Für die Prozedur wird ein Argument angegeben. Erwartete Fehlermeldung: Für diese Prozedur sind keine Argumente erforderlich. |