Anexar Armazenamento de Arquivos Externo ao Autonomous Database no Exadata Infrastructure Dedicado
Você pode anexar um armazenamento de arquivos externo implantado no Oracle Cloud Infrastructure ou local ao seu Autonomous Database, desde que o banco de dados e o sistema de arquivos estejam na mesma rede privada. O Autonomous Database na Infraestrutura Dedicada do Exadata suporta NFSv4, por padrão.
Isso permite que você carregue dados do OCI File Storage em sua Rede Virtual na Nuvem (VCN) ou em qualquer outro Sistema de Arquivos de Rede em data centers locais.
- Conecte-se a uma instância do Autonomous Database de um aplicativo legado e use o sistema de arquivos para carregar e descarregar dados.
- Analisar dados de diferentes origens em um Autonomous Database.
- Proteja o acesso aos dados em um Autonomous Database dos sistemas de arquivos em um data center local ou VCNs Privadas.
Tópicos Relacionados
Requisitos de Armazenamento de Arquivos Externo
-
Data Center Local: Configure FastConnect ou uma VPN Site a Site para estabelecer conexão com o data center local. Consulte FastConnect e VPN Site a Site para obter mais informações.
-
Oracle Cloud Infrastructure
-
Criar regras de segurança de VCN (Rede Virtual na Nuvem) para acesso ao OCI File Storage Service (FSS): Antes de montar um armazenamento de arquivos, configure regras de segurança para permitir o tráfego para a VNIC do destino de montagem usando protocolos e portas específicos. As regras de segurança permitem o tráfego para o seguinte:
- Protocolo do utilitário rpcbind ONC RPC (Open Network Computing Remote Procedure Call)
- Protocolo Network File System (NFS)
- Protocolo Network File System (MOUNT)
- Protocolo Network Lock Manager (NLM)
Consulte Configurando Regras de Segurança da VCN para o Serviço File Storage para obter mais detalhes.
- Criar um sistema de arquivos no OCI FSS: Crie um sistema de arquivos usando a console do OCI. Ao configurar detalhes do ponto de acesso NFS para o sistema de arquivos, selecione a VCN e a sub-rede privada dessa VCN na qual seu banco de dados está implantado e forneça um nome de host para gerar automaticamente um FQDN (Nome de Domínio Totalmente Qualificado). Consulte Criando Sistemas de Arquivos para obter mais informações.
- Obtenha o FQDN do destino de montagem: Exiba os detalhes do destino de montagem do seu sistema de arquivos na console do OCI conforme descrito em Para exibir detalhes de um destino de montagem para obter seu FQDN.
-
Anexar Sistema de Arquivos Externo
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
para anexar um sistema de arquivos a um diretório no Autonomous Database.
Observação:
O procedimentoDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
só pode anexar um Serviço de Armazenamento de Arquivos privado a bancos de dados que estão em pontos finais privados.
-
Crie um diretório ou use um diretório existente para anexar o sistema de arquivos externo ao seu Autonomous Database. Você deve ter o privilégio
WRITE
no objeto de diretório na instância do Autonomous Database para anexar um sistema de arquivos a um local de diretório no banco de dados.Por exemplo, o comando a seguir cria o diretório do banco de dados chamadoFSS_DIR
e cria o diretório do sistema de arquivosfss
:CREATE DIRECTORY FSS_DIR AS ‘fss’;
Consulte Criar um Diretório para obter mais informações.
-
Execute
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
para anexar um sistema de arquivos a um diretório no Autonomous Database. Para executar esse procedimento, você deve fazer log-in como usuário ADMIN ou ter o privilégioEXECUTE
emDBMS_CLOUD_ADMIN
.-
Por padrão,
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
usa NFSv3. No entanto, você pode optar por usar explicitamente o parâmetroparams
e especificarnfs_version
com o valor 3 para especificar NFSv3.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 FSS for sales data' );END; /
-
Para usar NFSv4, inclua o parâmetro
params
comDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
e especifique onfs_version
com o valor 4 para especificar NFSv4.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 FSS for sales data', params => JSON_OBJECT('nfs_version' value 4) ); END; /
Este exemplo anexa o sistema de arquivos de rede especificado no parâmetro
file_system_name
ao Autonomous Database.O parâmetro
file_system_location
especifica o local do sistema de arquivos. O valor fornecido comfile_system_location
consiste em um FQDN (Nome de Domínio Totalmente Qualificado) e um caminho de arquivo no formato: FQDN:
file_path. Por exemplo:-
- FQDN:
myhost.sub000445.myvcn.oraclevcn.com
- Caminho do Arquivo:
/results
- FQDN:
O parâmetro
directory_name
especifica o nome do diretório no Autonomous Database ao qual você deseja anexar o sistema de arquivos. Esse é o diretório criado na Etapa 1 ou outro diretório criado anteriormente.O parâmetro
description
especifica a descrição da tarefa. -
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
:
-
O serviço Oracle Cloud Infrastructure File Storage usa NFS Versão 3 para compartilhar. Consulte Visão Geral do Serviço File Storage para obter mais informações.
- Se você anexar a sistemas de Armazenamento de Arquivos que não são do Oracle Cloud Infrastructure, o procedimento suportará NFSv3 e NFSv4.
-
Se você tiver um servidor NFS anexado que use NFSv3 e a versão do NFS for atualizada para NFSv4 no servidor NFS, execute
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
e, em seguida,DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
(usando o parâmetroparams
comnfs_version
definido como 4. Isso anexa NFS ao protocolo de correspondência para que o Autonomous Database possa acessar o Servidor NFSv4. Sem desanexar e depois reanexar, o servidor NFS ficará inacessível e você poderá ver um erro como:"Protocol not supported"
.
Consulta DBA_CLOUD_FILE_SYSTEMS
Depois de anexar um sistema de arquivos, você pode consultar a view DBA_CLOUD_FILE_SYSTEMS
para recuperar informações sobre o sistema de arquivos anexado.
SELECT file_system_name, file_system_location, directory_path
FROM dba_cloud_file_systems
WHERE file_system_name = 'FSS';
Essa consulta retorna detalhes do nome do sistema de arquivos FSS
. Consulte DBMS_CLOUD_FILE_SYSTEMS View para obter mais informações.
Com um sistema de arquivos anexado, você pode ler e gravar arquivos em um sistema de arquivos anexado usando qualquer API PL/SQL que aceite um nome de diretório. Por exemplo, você pode usar qualquer um dos seguintes métodos para trabalhar com um diretório FSS anexado:
-
O pacote
UTL_FILE
. -
Utilitários de Exportação e Importação do Data Pump.
-
As APIs
DBMS_CLOUD
que funcionam com diretórios comoDBMS_CLOUD.LIST_FILES
eDBMS_CLOUD.PUT_OBJECT
.
UTL_FILE
:DECLARE
l_file UTL_FILE.FILE_TYPE;
l_location VARCHAR2(100) := 'FSS_DIR';
l_filename VARCHAR2(100) := 'test.csv';
BEGIN
-- Open the file.
l_file := UTL_FILE.FOPEN(l_location, l_filename, 'w');
UTL_FILE.PUT(l_file, 'Scott, male, 1000');
-- Close the file.
UTL_FILE.FCLOSE(l_file);
END;
/
UTL_FILE
:DECLARE
l_file UTL_FILE.FILE_TYPE;
l_location VARCHAR2(100) := 'FSS_DIR';
l_filename VARCHAR2(100) := 'test.csv';
l_text VARCHAR2(32767);
BEGIN
-- Open the file.
l_file := UTL_FILE.FOPEN(l_location, l_filename, 'r');
UTL_FILE.GET_LINE(l_file, l_text, 32767);
-- Close the file.
UTL_FILE.FCLOSE(l_file);
END;
/
DBMS_CLOUD.LIST_FILES
:SELECT object_name FROM DBMS_CLOUD.LIST_FILES('FSS_DIR');
DBMS_CLOUD_FILE_SYSTEMS Exibir
DBA_CLOUD_FILE_SYSTEMS
lista as informações sobre o sistema de arquivos externo anexado a um local de diretório no banco de dados.
Coluna | Tipo de Dados | Descrição |
---|---|---|
FILE_SYSTEM_NAME |
VARCHAR2(128) |
Nome do sistema de arquivos |
FILE_SYSTEM_LOCATION |
VARCHAR2(4000) |
Localização do sistema de arquivos |
DIRECTORY_NAME |
VARCHAR2(128) |
Nome do diretório anexado |
DIRECTORY_PATH |
VARCHAR2(4000) |
Caminho de diretório anexado |
NFS_VERSION |
NUMBER |
A versão NFS |
DESCRIPTION |
VARCHAR2(4000) |
O valor fornecido para o parâmetro de descrição quando você executa DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM |
CREATION_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Timestamp de criação |
UPDATE_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Atualizar timestamp |
Desativar Sistema de Arquivos Externos
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
para desanexar um sistema de arquivos de um diretório no Autonomous Database.
Observação:
O procedimentoDBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
só pode desanexar um Serviço de Armazenamento de Arquivos privado dos bancos de dados que estão em pontos finais privados.
Você deve ter o privilégio WRITE
no objeto de diretório para desanexar um sistema de arquivos de um local de diretório.
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
para desanexar um sistema de arquivos de um local de diretório no Autonomous Database. Para executar esse procedimento, você deve fazer log-in como usuário ADMIN ou ter o privilégio EXECUTE
em DBMS_CLOUD_ADMIN
.BEGIN
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
file_system_name => 'FSS'
);END;
/
Este exemplo desanexa do Autonomous Database o sistema de arquivos de rede especificado no parâmetro file_system_name
. Forneça um valor para este parâmetro. As informações sobre este sistema de arquivos são removidas da exibição DBA_CLOUD_FILE_SYSTEMS
.
Consulte DETACH_FILE_SYSTEM Procedimento para obter mais informações.