Asociación de almacenamiento de archivos externo a Autonomous Database on Dedicated Exadata Infrastructure
Puede asociar un almacenamiento de archivos externo desplegado en Oracle Cloud Infrastructure o local a su instancia de Autonomous Database, siempre que la base de datos y el sistema de archivos estén en la misma red privada. Por defecto, Autonomous Database on Dedicated Exadata Infrastructure soporta NFSv4.
Esto le permite cargar datos de OCI File Storage en su red virtual en la nube (VCN) o en cualquier otro sistema de archivos de red en centros de datos locales.
- Conéctese a una instancia de Autonomous Database desde una aplicación heredada y utilice el sistema de archivos para cargar y descargar datos.
- Analice datos de diferentes orígenes en una instancia de Autonomous Database.
- Acceso seguro a los datos de una instancia de Autonomous Database desde los sistemas de archivos de un centro de datos local o VCN privadas.
Temas relacionados
Requisitos de almacenamiento de archivos externo
-
Centro de datos local: configure FastConnect o una VPN de sitio a sitio para conectarse al centro de datos local. Consulte FastConnect y VPN de sitio a sitio para obtener más información.
-
Oracle Cloud Infrastructure
-
Crear reglas de seguridad de red virtual en la nube (VCN) para el acceso al servicio OCI File Storage (FSS): antes de montar un almacenamiento de archivos, debe configurar reglas de seguridad para permitir el tráfico a la VNIC del destino de montaje mediante protocolos y puertos específicos. Las reglas de seguridad activan el tráfico para lo siguiente:
- Protocolo de la utilidad rpcbind Open Network Computing Remote Procedure Call (ONC RPC)
- Protocolo de sistema de archivos de red (NFS)
- Protocolo de sistema de archivos de red (MOUNT)
- Protocolo de administrador de bloqueo de red (NLM)
Consulte Configuración de reglas de seguridad de VCN para File Storage para obtener más información.
- Crear un sistema de archivos en OCI FSS: cree un sistema de archivos mediante la consola de OCI. Al configurar los detalles del destino de montaje para el sistema de archivos, seleccione la VCN y la subred privada de esa VCN en la que se despliega la base de datos y proporcione un nombre de host para generar automáticamente un nombre de dominio completo (FQDN). Consulte Creación de sistemas de archivos para obtener más información.
- Obtenga el FQDN para el destino de montaje: consulte los detalles del destino de montaje del sistema de archivos desde la consola de OCI, como se describe en Para ver los detalles de un destino de montaje para obtener su FQDN.
-
Adjuntar sistema de archivos externo
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
para asociar un sistema de archivos a un directorio de Autonomous Database.
Note:
El procedimientoDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
solo puede asociar un servicio de almacenamiento de archivos privado a bases de datos que estén en puntos finales privados.
-
Cree un directorio o utilice un directorio existente para asociar el sistema de archivos externo en Autonomous Database. Debe tener el privilegio
WRITE
en el objeto de directorio de la instancia de Autonomous Database para asociar un sistema de archivos a una ubicación de directorio en la base de datos.Por ejemplo, el siguiente comando crea el directorio de base de datos denominadoFSS_DIR
y crea el directoriofss
del sistema de archivos:CREATE DIRECTORY FSS_DIR AS ‘fss’;
Consulte Create a Directory para obtener más información.
-
Ejecute
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
para asociar un sistema de archivos a un directorio de Autonomous Database. Para ejecutar este procedimiento, debe estar conectado como usuario ADMIN o tener el privilegioEXECUTE
enDBMS_CLOUD_ADMIN
.-
Por defecto,
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
utiliza NFSv3. Sin embargo, puede elegir utilizar explícitamente el parámetroparams
y especificarnfs_version
con el 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 utilizar NFSv4, incluya el parámetro
params
conDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
y especifiquenfs_version
con el 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; /
En este ejemplo se asocia el sistema de archivos de red especificado en el parámetro
file_system_name
a Autonomous Database.El parámetro
file_system_location
especifica la ubicación del sistema de archivos. El valor que proporciona confile_system_location
consta de un nombre de dominio completo (FQDN) y una ruta de archivo con el formato: FQDN:
file_path. Por ejemplo:-
- NMF:
myhost.sub000445.myvcn.oraclevcn.com
- Ruta del archivo:
/results
- NMF:
El parámetro
directory_name
especifica el nombre del directorio en la instancia de Autonomous Database donde desea asociar el sistema de archivos. Este es el directorio que se creó en el paso 1 u otro directorio que se creó anteriormente.El parámetro
description
especifica la descripción de la tarea. -
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
:
-
Oracle Cloud Infrastructure File Storage utiliza NFS versión 3 para compartir. Consulte Visión general de almacenamiento de archivos para obtener más información.
- Si se asocia a sistemas que no son de Oracle Cloud Infrastructure File Storage, el procedimiento soporta NFSv3 y NFSv4.
-
Si tiene un servidor NFS conectado que utiliza NFSv3 y la versión de NFS se actualiza a NFSv4 en el servidor NFS, debe ejecutar
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
y, a continuación,DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
(mediante el parámetroparams
connfs_version
definido en 4). Con ello se asocia NFS con el protocolo coincidente para que Autonomous Database pueda acceder al servidor NFSv4. Sin desconectar y volver a conectar, no se podrá acceder al servidor NFS y puede que aparezca un error como:"Protocol not supported"
.
Consulta DBA_CLOUD_FILE_SYSTEMS
Después de adjuntar un sistema de archivos, puede consultar la vista DBA_CLOUD_FILE_SYSTEMS
para recuperar información sobre el sistema de archivos adjunto.
SELECT file_system_name, file_system_location, directory_path
FROM dba_cloud_file_systems
WHERE file_system_name = 'FSS';
Esta consulta devuelve detalles para el nombre del sistema de archivos FSS
. Consulte la vista DBMS_CLOUD_FILE_SYSTEMS para obtener más información.
Con un sistema de archivos asociado, puede leer y escribir en archivos de un sistema de archivos asociado mediante cualquier API PL/SQL que acepte un nombre de directorio. Por ejemplo, puede utilizar cualquiera de los siguientes métodos para trabajar con un directorio FSS conectado:
-
El paquete
UTL_FILE
. -
Utilidades de importación y exportación de pump de datos.
-
API
DBMS_CLOUD
que funcionan con directorios comoDBMS_CLOUD.LIST_FILES
yDBMS_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 Vista
DBA_CLOUD_FILE_SYSTEMS
muestra la información sobre el sistema de archivos externo asociado a una ubicación de directorio en la base de datos.
Columna | Tipo de datos | Descripción |
---|---|---|
FILE_SYSTEM_NAME |
VARCHAR2(128) |
Nombre del sistema de archivos |
FILE_SYSTEM_LOCATION |
VARCHAR2(4000) |
Ubicación del sistema de archivos |
DIRECTORY_NAME |
VARCHAR2(128) |
Nombre de directorio asociado |
DIRECTORY_PATH |
VARCHAR2(4000) |
Ruta de directorio asociada |
NFS_VERSION |
NUMBER |
La versión de NFS |
DESCRIPTION |
VARCHAR2(4000) |
Valor proporcionado para el parámetro de descripción al ejecutar DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM |
CREATION_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Registro de hora de creación |
UPDATE_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Actualizar registro de hora |
Desasociar sistema de archivos externo
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
para desasociar un sistema de archivos de un directorio de Autonomous Database.
Note:
El procedimientoDBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
solo puede desasociar un servicio de almacenamiento de archivos privado de las bases de datos que están en puntos finales privados.
Debe tener el privilegio WRITE
en el objeto de directorio para desasociar un sistema de archivos de una ubicación de directorio.
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
para desasociar un sistema de archivos de una ubicación de directorio en Autonomous Database. Para ejecutar este procedimiento, debe estar conectado como usuario ADMIN o tener el privilegio EXECUTE
en DBMS_CLOUD_ADMIN
.BEGIN
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
file_system_name => 'FSS'
);END;
/
En este ejemplo se separa el sistema de archivos de red especificado en el parámetro file_system_name
de Autonomous Database. Debe proporcionar un valor para este parámetro. La información sobre este sistema de archivos se elimina de la vista DBA_CLOUD_FILE_SYSTEMS
.
Consulte DETACH_FILE_SYSTEM Procedimiento para obtener más información.