Trabalhar com diretórios no AWS RDS

Trabalhar com diretórios no AWS RDS é um pouco diferente do que banco de dados On-Premise, muitos comandos que eu encontrei na internet não funcionam no RDS.
Estes foram alguns dos comandos utilizados para a criação de uma nova instância e administrar os acessos em determinado diretório.
Prometo postar em breve a integração dos arquivos RDS com os BUCKETS S3.
Listar diretórios:
select * from dba_directories;
select * from all_directories;
Criar diretório
*Importante: Crie o diretório com o usuário que será o responsável pelo mesmo, apenas este usuário terá total acesso no diretório criado.
begin
rdsadmin.rdsadmin_util.create_directory(p_directory_name => 'DIRECTORY');
end;
/
Conceder e retirar Permissões de Leitura e escrita no diretório
grant read,write,execute on directory DIRETORIO to USUARIO;
REVOKE read,write on directory DIRETORIO FROM USUARIO;
Criar um subdiretório
CREATE DIRECTORY DIRECTORY AS '/rdsdbdata/userdirs/03';
Listar todos os arquivos no diretório
select * from table
(rdsadmin.rds_file_util.listdir(p_directory => 'DIRECTORY'));
Consultar arquivos TXT no diretório
select filename from table(rdsadmin.rds_file_util.listdir(p_directory => 'DIRECTORY')) where (filename like '%.TXT' OR filename like '%.txt');
Ler Arquivo
select * from table(rdsadmin.rds_file_util.read_text_file(p_directory => 'DIRECTORY', p_filename => 'FILE.txt'));
Verificar permissões no diretório
--Como DBA
select * from dba_tab_privs where type = 'DIRECTORY';
--Como usuário normal:
select * from user_tab_privs where type = 'DIRECTORY';
Remover Arquivo de dentro do diretório
BEGIN
UTL_FILE.FREMOVE(p_directory_name => 'DIRECTORY', 'FILE');
END;
/
Remover todos os arquivos do diretório
BEGIN
for i in (select filename from
table(RDSADMIN.RDS_FILE_UTIL.LISTDIR('MY_DIR')) where type='file')
loop
UTL_FILE.FREMOVE ('DIRECTORY', i.filename);
end loop;
END;
/
Apagar Diretório
drop directory DIRECTORY;