Pacote DBMS_CACHE
O pacote DBMS_CACHE facilita o armazenamento automático em cache para caches de tabelas externas em uma instância do Autonomous AI Database.
- Resumo de Subprogramas DBMS_CACHE
Esta tabela resume os subprogramas incluídos no pacoteDBMS_CACHE.
Tópico principal: Referência de Pacote Fornecida pelo Autonomous AI Database
Resumo dos Subprogramas DBMS_CACHE
Esta tabela resume os subprogramas incluídos no pacote DBMS_CACHE.
| Subprograma | Descrição |
|---|---|
|
Limpa todos os caches de tabelas externas de um usuário especificado. |
|
|
Recupera propriedades de armazenamento em cache da tabela externa. |
|
|
Recupera propriedades de armazenamento em cache da tabela externa para um usuário especificado. |
|
|
Atualiza todos os caches de tabelas externas para um usuário especificado. |
|
|
Especifica a preferência de armazenamento em cache da tabela externa para todos os usuários do banco de dados. |
|
|
Especifica a preferência de armazenamento em cache da tabela externa para um usuário especificado. |
- Procedimento CLEAR
Use o procedimentoDBMS_CACHE.CLEARpara eliminar todos os caches de tabelas externas de um usuário especificado. - Procedimento GET_GLOBAL_PROPERTY
O procedimentoDBMS_CACHE.GET_GLOBAL_PROPERTYrecupera as preferências de armazenamento em cache da tabela externa para todos os usuários no banco de dados. Este procedimento é sobrecarregado. - Procedimento SET_GLOBAL_PROPERTY
Use o procedimentoDBMS_CACHE.SET_GLOBAL_PROPERTYpara definir propriedades de armazenamento em cache AUTO para todos os usuários do banco de dados, incluindo aquelas que ativam o armazenamento em cache automático para o banco de dados. Este procedimento é sobrecarregado. - Procedimento REFRESH
Use o procedimentoDBMS_CACHE.REFRESHpara atualizar todos os caches da tabela externa AUTO para um usuário especificado. - Procedimento GET_USER_PROPERTY
Use o procedimentoDBMS_CACHE.GET_USER_PROPERTYpara recuperar propriedades de armazenamento automático em cache para um usuário. - Procedimento SET_USER_PROPERTY
Use o procedimentoDBMS_CACHE.SET_USER_PROPERTYpara definir propriedades de armazenamento em cache do AUTO para um esquema especificado, incluindo aquelas que ativam o armazenamento em cache automático para o esquema. Este procedimento é sobrecarregado.
Tópico principal: Pacote DBMS_CACHE
Procedimento CLEAR
Use o procedimento DBMS_CACHE.CLEAR para eliminar todos os caches de tabela externa de um usuário especificado.
DBMS_CACHE.CLEAR elimina todos os caches de tabelas externas e libera o espaço de armazenamento, semelhante ao modo como o comando DROP funciona em uma tabela de banco de dados.
Sintaxe
DBMS_CACHE.CLEAR (
owner IN VARCHAR2
);Parâmetros
| Parâmetro | Descrição |
|---|---|
|
|
Especifica o nome do esquema. |
Exemplo
BEGIN
DBMS_CACHE.CLEAR (
owner => 'SALES');
END;
/Observação do Uso
-
Você deve estar conectado como usuário
ADMINou ter o privilégioEXECUTEno pacoteDBMS_CACHEpara limpar um cache.
Tópico principal: Resumo de Subprogramas DBMS_CACHE
GET_GLOBAL_PROPERTY Procedimento
O procedimento DBMS_CACHE.GET_GLOBAL_PROPERTY recupera as preferências de cache da tabela externa para todos os usuários no banco de dados. Este procedimento é sobrecarregado.
Sintaxe
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);
Parâmetros
| Parâmetro | Descrição |
|---|---|
|
|
Especifica o nome da propriedade. Estes são os valores válidos para
property_name:
|
|
|
Recupera um valor |
|
|
Recupera um valor |
Exemplo
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;
/Observação do Uso
-
Você deve estar conectado como usuário
ADMINou ter o privilégioEXECUTEno pacoteDBMS_CACHEpara executar este procedimento.
Tópico principal: Resumo de Subprogramas DBMS_CACHE
SET_GLOBAL_PROPERTY Procedimento
Use o procedimento DBMS_CACHE.SET_GLOBAL_PROPERTY para definir propriedades de armazenamento em cache AUTO para todos os usuários do banco de dados, incluindo aqueles que ativam o armazenamento em cache automático para o banco de dados. Este procedimento é sobrecarregado.
Por padrão, o armazenamento automático em cache de tabelas externas é desativado. Para ativá-lo, defina o tamanho do cache para um valor diferente de zero usando a propriedade MAX_CACHE_SIZE ou MAX_CACHE_SIZE do procedimento DBMS_CACHE.SET_GLOBAL_PROPERTY. Isso permite o armazenamento automático em cache globalmente para o banco de dados.
Sintaxe
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);
Parâmetros
| Parâmetro | Descrição |
|---|---|
|
|
Especifica o nome da propriedade. Estes são os valores válidos para
property_name:
|
|
|
Fornece um valor |
|
|
Fornece um valor |
Exemplos
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;
/Observações de Uso
-
Você deve estar conectado como usuário
ADMINou ter o privilégioEXECUTEno pacoteDBMS_CACHEpara executar este procedimento. -
A propriedade
MAX_REFRESH_WINDOWespecifica, em segundo lugar, o tempo máximo permitido para atualizar caches de tabelas externas. Se a atualização exceder o limite especificado, a atualização de cache será encerrada normalmente e quaisquer caches elegíveis restantes serão enfileirados para o próximo ciclo de atualização. -
Quando você atualiza caches usando o procedimento
DBMS_CACHE.REFRESH, o parâmetro de procedimento tem precedência sobre a propriedadeAUTO_REFRESH_MODE.Consulte Procedimento REFRESH para obter mais informações.
Tópico principal: Resumo de Subprogramas DBMS_CACHE
REFRESH Procedimento
Use o procedimento DBMS_CACHE.REFRESH para atualizar todos os caches de tabela externa AUTO para um usuário especificado.
Sintaxe
DBMS_CACHE.REFRESH (
owner IN VARCHAR2,
refresh_type IN VARCHAR2 DEFAULT ALL
);Parâmetros
| Parâmetro | Descrição |
|---|---|
|
|
Especifica o nome do esquema. |
|
|
Especifica a opção de atualização. Estes são os valores válidos de
refresh_type:
Esse parâmetro é opcional e tem como padrão |
Exemplo
BEGIN
DBMS_CACHE.REFRESH (
owner => 'SALES',
refresh_type => 'CURRENT');
END;
/Observações de Uso
-
Você deve estar conectado como usuário
ADMINou ter o privilégioEXECUTEno pacoteDBMS_CACHEpara executar este procedimento. -
Se você não especificar um valor para o parâmetro
refresh_type, a Oracle executará a atualização com base no valorauto_refresh_mode. O valor padrão paraauto_refresh_modeéALL. -
Quando a propriedade
MAX_REFRESH_WINDOWé definida, o sistema Oracle tenta executar a atualização na janela especificada. Se a atualização exceder o limite especificado, a atualização de cache será encerrada normalmente e quaisquer caches elegíveis restantes serão enfileirados para o próximo ciclo de atualização. -
Todos os caches AUTO no banco de dados são gerenciados usando um algoritmo de remoção semelhante ao LRU (Menos Usado Recentemente). Quando sob pressão de espaço, os caches que foram acessados menos recentemente são automaticamente eliminados durante o processo de atualização para liberar o espaço de armazenamento.
Tópico principal: Resumo de Subprogramas DBMS_CACHE
GET_USER_PROPERTY Procedimento
Use o procedimento DBMS_CACHE.GET_USER_PROPERTY para recuperar propriedades de armazenamento automático em cache para um usuário.
Sintaxe
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);Parâmetros
| Parâmetro | Descrição |
|---|---|
|
|
Especifica o nome da propriedade. Estes são os valores válidos para
property_name:
|
|
|
Especifica o nome do esquema. Esse parâmetro é opcional e assume como padrão o esquema atual. |
|
|
Recupera um valor |
|
|
Recupera um valor |
Exemplo
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;
/Observação do Uso
-
Você deve estar conectado como usuário
ADMINou ter o privilégioEXECUTEno pacoteDBMS_CACHEpara executar este procedimento.
Tópico principal: Resumo de Subprogramas DBMS_CACHE
SET_USER_PROPERTY Procedimento
Use o procedimento DBMS_CACHE.SET_USER_PROPERTY para definir propriedades de armazenamento em cache AUTO para um esquema especificado, incluindo aquelas que ativam o armazenamento automático em cache para o esquema. Este procedimento é sobrecarregado.
Sintaxe
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
);
Parâmetros
| Parâmetro | Descrição |
|---|---|
|
|
Especifica o nome da propriedade. Estes são os valores válidos para
property_name:
|
|
|
Fornece um valor |
|
|
Fornece um valor |
|
|
Especifica o nome do esquema. Esse parâmetro é opcional e assume como padrão o esquema atual. |
Exemplo
BEGIN
DBMS_CACHE.SET_USER_PROPERTY (
property_name => 'MAX_CACHE_SIZE',
property_value_num => 50,
owner => 'SALES');
END;
/Observação do Uso
-
Você deve estar conectado como usuário
ADMINou ter o privilégioEXECUTEno pacoteDBMS_CACHEpara executar este procedimento.
Tópico principal: Resumo de Subprogramas DBMS_CACHE