DBMS_CACHE-Package
Das Package DBMS_CACHE erleichtert das automatische Caching für externe Tabellencaches in einer autonomen AI-Datenbankinstanz.
- Zusammenfassung der DBMS_CACHE-Unterprogramme
In dieser Tabelle werden die Unterprogramme zusammengefasst, die imDBMS_CACHE-Package enthalten sind.
Übergeordnetes Thema: Von autonomer KI-Datenbank bereitgestellte Packagereferenz
Zusammenfassung der DBMS_CACHE-Unterprogramme
In dieser Tabelle werden die Unterprogramme zusammengefasst, die im Package DBMS_CACHE enthalten sind.
| Unterprogramm | Beschreibung |
|---|---|
|
Löscht alle externen Tabellencaches für einen angegebenen Benutzer. |
|
|
Ruft externe Tabellen-Caching-Eigenschaften ab. |
|
|
Ruft externe Tabellen-Caching-Eigenschaften für einen angegebenen Benutzer ab. |
|
|
Aktualisiert alle externen Tabellencaches für einen angegebenen Benutzer. |
|
|
Gibt die Voreinstellung für das externe Tabellen-Caching für alle Datenbankbenutzer an. |
|
|
Gibt die Voreinstellung für das externe Tabellen-Caching für einen angegebenen Benutzer an. |
- CLEAR-Prozedur
Mit der ProzedurDBMS_CACHE.CLEARkönnen Sie alle externen Tabellencaches für einen angegebenen Benutzer löschen. - Prozedur GET_GLOBAL_PROPERTY
Die ProzedurDBMS_CACHE.GET_GLOBAL_PROPERTYruft die Voreinstellungen für das externe Tabellen-Caching für alle Benutzer in der Datenbank ab. Diese Prozedur ist überladen. - Prozedur SET_GLOBAL_PROPERTY
Mit der ProzedurDBMS_CACHE.SET_GLOBAL_PROPERTYkönnen Sie AUTO-Caching-Eigenschaften für alle Datenbankbenutzer festlegen, einschließlich derjenigen, die das automatische Caching für die Datenbank aktivieren. Diese Prozedur ist überladen. - REFRESH-Prozedur
Mit der ProzedurDBMS_CACHE.REFRESHkönnen Sie alle externen AUTO-Tabellencaches für einen angegebenen Benutzer aktualisieren. - Prozedur GET_USER_PROPERTY
Mit der ProzedurDBMS_CACHE.GET_USER_PROPERTYkönnen Sie automatische Caching-Eigenschaften für einen Benutzer abrufen. - Prozedur SET_USER_PROPERTY
Mit der ProzedurDBMS_CACHE.SET_USER_PROPERTYkönnen Sie AUTO-Caching-Eigenschaften für ein angegebenes Schema festlegen, einschließlich der Eigenschaften, die das automatische Caching für das Schema aktivieren. Diese Prozedur ist überladen.
Übergeordnetes Thema: DBMS_CACHE Package
CLEAR-Verfahren
Verwenden Sie die Prozedur DBMS_CACHE.CLEAR, um alle externen Tabellencaches für einen angegebenen Benutzer zu löschen.
DBMS_CACHE.CLEAR löscht alle externen Tabellencaches und gibt den Speicherplatz frei, ähnlich wie der Befehl DROP für eine Datenbanktabelle.
Syntax
DBMS_CACHE.CLEAR (
owner IN VARCHAR2
);Parameter
| Parameter | Beschreibung |
|---|---|
|
|
Legt den Schemanamen fest. |
Beispiel
BEGIN
DBMS_CACHE.CLEAR (
owner => 'SALES');
END;
/Hinweis zur Verwendung
-
Sie müssen als Benutzer
ADMINangemeldet sein oder über die BerechtigungEXECUTEfür das PackageDBMS_CACHEverfügen, um einen Cache zu löschen.
Übergeordnetes Thema: Zusammenfassung der Unterprogramme DBMS_CACHE
Prozedur GET_GLOBAL_PROPERTY
Die Prozedur DBMS_CACHE.GET_GLOBAL_PROPERTY ruft die Voreinstellungen für das externe Tabellen-Caching für alle Benutzer in der Datenbank ab. Diese Prozedur ist überladen.
Syntax
DBMS_CACHE.GET_GLOBAL_PROPERTY (
property_name IN VARCHAR2,
property_value_num OUT VARCHAR2);
DBMS_CACHE.GET_GLOBAL_PROPERTY (
property_name IN VARCHAR2,
property_value_str OUT VARCHAR2);
Parameter
| Parameter | Beschreibung |
|---|---|
|
|
Gibt den Namen der Eigenschaft an. Folgende gültige Werte sind für
property_name verfügbar:
|
|
|
Ruft einen |
|
|
Ruft einen |
Beispiel
SET SERVEROUTPUT ON;
DECLARE
cache_property NUMBER;
BEGIN
DBMS_CACHE.GET_GLOBAL_PROPERTY (
property_name => 'MAX_CACHE_SIZE',
property_value => cache_property
);
DBMS_OUTPUT.PUT_LINE('MAX_CACHE_SIZE = ' || cache_property);
END;
/Hinweis zur Verwendung
-
Sie müssen als Benutzer
ADMINangemeldet sein oder über die BerechtigungEXECUTEfür das PackageDBMS_CACHEverfügen, um diese Prozedur ausführen zu können.
Übergeordnetes Thema: Zusammenfassung der Unterprogramme DBMS_CACHE
Prozedur SET_GLOBAL_PROPERTY
Verwenden Sie die Prozedur DBMS_CACHE.SET_GLOBAL_PROPERTY, um AUTO-Caching-Eigenschaften für alle Datenbankbenutzer festzulegen, einschließlich derjenigen, die das automatische Caching für die Datenbank aktivieren. Diese Prozedur ist überladen.
Standardmäßig ist das automatische Caching externer Tabellen deaktiviert. Um ihn zu aktivieren, setzen Sie die Cachegröße mit der Eigenschaft MAX_CACHE_SIZE oder MAX_CACHE_SIZE der Prozedur DBMS_CACHE.SET_GLOBAL_PROPERTY auf einen Wert ungleich Null. Dadurch wird das automatische Caching für die Datenbank global aktiviert.
Syntax
DBMS_CACHE.SET_GLOBAL_PROPERTY (
property_name IN VARCHAR2,
property_value_num IN NUMBER);
DBMS_CACHE.SET_GLOBAL_PROPERTY (
property_name IN VARCHAR2,
property_value_str IN VARCHAR2);
Parameter
| Parameter | Beschreibung |
|---|---|
|
|
Gibt den Namen der Eigenschaft an. Folgende gültige Werte sind für
property_name verfügbar:
|
|
|
Stellt einen |
|
|
Stellt einen |
Beispiele
BEGIN
DBMS_CACHE.SET_GLOBAL_PROPERTY (
property_name => 'MAX_CACHE_SIZE',
property_value_num => 50);
END;
/BEGIN
DBMS_CACHE.SET_GLOBAL_PROPERTY (
property_name => 'AUTO_REFRESH_MODE',
property_value_str => 'NEW');
END;
/BEGIN
DBMS_CACHE.SET_GLOBAL_PROPERTY (
property_name => 'MAX_REFRESH_WINDOW',
property_value_num => 20);
END;
/Hinweise zur Verwendung
-
Sie müssen als Benutzer
ADMINangemeldet sein oder über die BerechtigungEXECUTEfür das PackageDBMS_CACHEverfügen, um diese Prozedur ausführen zu können. -
Die Eigenschaft
MAX_REFRESH_WINDOWgibt in Sekunden an, wie lange maximal externe Tabellencaches aktualisiert werden dürfen. Wenn die Aktualisierung den angegebenen Grenzwert überschreitet, wird die Cacheaktualisierung normal beendet, und alle verbleibenden zulässigen Caches werden für den nächsten Aktualisierungszyklus in die Queue gestellt. -
Wenn Sie Caches mit der Prozedur
DBMS_CACHE.REFRESHaktualisieren, hat der Prozedurparameter Vorrang vor der EigenschaftAUTO_REFRESH_MODE.Weitere Informationen finden Sie unter Prozedur REFRESH.
Übergeordnetes Thema: Zusammenfassung der Unterprogramme DBMS_CACHE
REFRESH-Verfahren
Verwenden Sie die Prozedur DBMS_CACHE.REFRESH, um alle externen AUTO-Tabellencaches für einen angegebenen Benutzer zu aktualisieren.
Syntax
DBMS_CACHE.REFRESH (
owner IN VARCHAR2,
refresh_type IN VARCHAR2 DEFAULT ALL
);Parameter
| Parameter | Beschreibung |
|---|---|
|
|
Legt den Schemanamen fest. |
|
|
Gibt die Aktualisierungsoption an. Folgende gültige
refresh_type-Werte sind verfügbar:
Dieser Parameter ist optional und standardmäßig |
Beispiel
BEGIN
DBMS_CACHE.REFRESH (
owner => 'SALES',
refresh_type => 'CURRENT');
END;
/Hinweise zur Verwendung
-
Sie müssen als Benutzer
ADMINangemeldet sein oder über die BerechtigungEXECUTEfür das PackageDBMS_CACHEverfügen, um diese Prozedur ausführen zu können. -
Wenn Sie keinen Wert für den Parameter
refresh_typeangeben, führt Oracle eine Aktualisierung basierend auf dem Wertauto_refresh_modedurch. Der Standardwert fürauto_refresh_modeistALL. -
Wenn die Eigenschaft
MAX_REFRESH_WINDOWfestgelegt ist, versucht Oracle, eine Aktualisierung im angegebenen Fenster durchzuführen. Wenn die Aktualisierung den angegebenen Grenzwert überschreitet, wird die Cacheaktualisierung normal beendet, und alle verbleibenden zulässigen Caches werden für den nächsten Aktualisierungszyklus in die Queue gestellt. -
Alle AUTO-Caches in der Datenbank werden mit einem Räumungsalgorithmus verwaltet, der dem LRU (Least Recently Used) ähnelt. Unter Speicherplatzdruck werden Caches, auf die zuletzt zugegriffen wurde, während des Aktualisierungsprozesses automatisch gelöscht, um den Speicherplatz freizugeben.
Übergeordnetes Thema: Zusammenfassung der Unterprogramme DBMS_CACHE
Prozedur GET_USER_PROPERTY
Verwenden Sie die Prozedur DBMS_CACHE.GET_USER_PROPERTY, um automatische Caching-Eigenschaften für einen Benutzer abzurufen.
Syntax
DBMS_CACHE.GET_USER_PROPERTY (
property_name IN VARCHAR2,
owner IN VARCHAR2 DEFAULT NULL,
property_value_str OUT VARCHAR2);
DBMS_CACHE.GET_USER_PROPERTY (
property_name IN VARCHAR2,
owner IN VARCHAR2 DEFAULT NULL,
property_value_num OUT NUMBER);Parameter
| Parameter | Beschreibung |
|---|---|
|
|
Gibt den Namen der Eigenschaft an. Folgende gültige Werte sind für
property_name verfügbar:
|
|
|
Legt den Schemanamen fest. Dieser Parameter ist optional und standardmäßig das aktuelle Schema. |
|
|
Ruft einen |
|
|
Ruft einen |
Beispiel
SET SERVEROUTPUT ON;
DECLARE
cache_property NUMBER;
BEGIN
DBMS_CACHE.GET_USER_PROPERTY (
property_name => 'MAX_CACHE_SIZE',
owner => NULL,
property_value => cache_property
);
DBMS_OUTPUT.PUT_LINE('MAX_CACHE_SIZE = ' || cache_property);
END;
/Hinweis zur Verwendung
-
Sie müssen als Benutzer
ADMINangemeldet sein oder über die BerechtigungEXECUTEfür das PackageDBMS_CACHEverfügen, um diese Prozedur ausführen zu können.
Übergeordnetes Thema: Zusammenfassung der Unterprogramme DBMS_CACHE
Prozedur SET_USER_PROPERTY
Verwenden Sie die Prozedur DBMS_CACHE.SET_USER_PROPERTY, um AUTO-Caching-Eigenschaften für ein angegebenes Schema festzulegen, einschließlich der Eigenschaften, die das automatische Caching für das Schema aktivieren. Diese Prozedur ist überladen.
Syntax
DBMS_CACHE.SET_USER_PROPERTY (
property_name IN VARCHAR2,
property_value_num IN NUMBER,
owner IN VARCHAR2 DEFAULT NULL);
DBMS_CACHE.SET_USER_PROPERTY (
property_name IN VARCHAR2,
property_value_str IN NUMBER,
owner IN VARCHAR2 DEFAULT NULL
);
Parameter
| Parameter | Beschreibung |
|---|---|
|
|
Gibt den Namen der Eigenschaft an. Folgende gültige Werte sind für
property_name verfügbar:
|
|
|
Stellt einen |
|
|
Stellt einen |
|
|
Legt den Schemanamen fest. Dieser Parameter ist optional und standardmäßig das aktuelle Schema. |
Beispiel
BEGIN
DBMS_CACHE.SET_USER_PROPERTY (
property_name => 'MAX_CACHE_SIZE',
property_value_num => 50,
owner => 'SALES');
END;
/Hinweis zur Verwendung
-
Sie müssen als Benutzer
ADMINangemeldet sein oder über die BerechtigungEXECUTEfür das PackageDBMS_CACHEverfügen, um diese Prozedur ausführen zu können.
Übergeordnetes Thema: Zusammenfassung der Unterprogramme DBMS_CACHE