SHOW DATABASES
Muestra las bases de datos de un ID de cuenta especificado.
Sintaxis
SHOW DATABASES FROM
DATA CATALOG [ ACCOUNT '<id1>', '<id2>', ... ]
[ LIKE '<expression>' ]
[ IAM_ROLE default | 'SESSION' | 'arn:aws:iam::<account-id>:role/<role-name>' ]
Parámetros
- ACCOUNT '<id1>', '<id2>', ...
-
Las cuentas de AWS Glue Data Catalog desde las que se enumeran las bases de datos. La omisión de este parámetro indica que Amazon Redshift debe mostrar las bases de datos de la cuenta propietaria del clúster.
- LIKE '<expresión>'
-
Filtra la lista de bases de datos para obtener las que coinciden con la que especifica. Este parámetro admite patrones que utilizan los caracteres comodín % (porcentaje) y _ (subrayado).
- IAM_ROLE default | 'SESSION' | 'arn:aws:iam::<id-cuenta>:role/<nombre-rol>'
-
Si especifica un rol de IAM asociado al clúster al ejecutar el comando SHOW DATABASES, Amazon Redshift utilizará las credenciales del rol cuando ejecute consultas en la base de datos.
Especificar la palabra clave
default
significa utilizar el rol de IAM establecido como predeterminado y asociado al clúster.Use
'SESSION'
si se conecta al clúster de Amazon Redshift mediante una identidad federada y acceda a las tablas desde la base de datos externa creada con el comando CREATE DATABASE. Para ver un ejemplo de utilización de una identidad federada, consulte Uso de una identidad federada para administrar el acceso de Amazon Redshift a los recursos locales y a las tablas externas de Amazon Redshift Spectrum, lo que explica cómo configurar la identidad federada.Utilice el nombre de recurso de Amazon (ARN), de un rol de IAM que el clúster utiliza para la autenticación y la autorización. Como mínimo, el rol de IAM debe tener permiso para realizar una operación LIST en el bucket de Amazon S3 al que se accederá y una operación GET en los objetos de Amazon S3 que el bucket contiene. Para obtener más información sobre las bases de datos creadas a partir AWS Glue Data Catalog de los recursos compartidos de datos y utilizar IAM_ROLE, consulte Uso de los recursos compartidos de datos administrados por Lake Formation como consumidor.
A continuación se muestra la sintaxis de la cadena del parámetro IAM_ROLE para un único ARN.
IAM_ROLE 'arn:aws:iam::
<aws-account-id>
:role/<role-name>
'Puede encadenar roles para que el clúster pueda asumir otro rol de IAM, que posiblemente pertenezca a otra cuenta. Puede encadenar hasta 10 roles. Para obtener más información, consulte Encadenamiento de roles de IAM en Amazon Redshift Spectrum.
Para este rol de IAM; asocie una política de permisos de IAM similar a la siguiente.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AccessSecret", "Effect": "Allow", "Action": [ "secretsmanager:GetResourcePolicy", "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecretVersionIds" ], "Resource": "arn:aws:secretsmanager:
us-west-2
:123456789012
:secret:my-rds-secret-VNenFy" }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ "secretsmanager:GetRandomPassword", "secretsmanager:ListSecrets" ], "Resource": "*" } ] }Para obtener información sobre los pasos para crear un rol de IAM que se utilizará con la consulta federada, consulte Creación de un secreto y rol de IAM para utilizar consultas federadas.
nota
No incluya espacios en la lista de roles encadenados.
A continuación se muestra la sintaxis para encadenar tres roles.
IAM_ROLE 'arn:aws:iam::
<aws-account-id>
:role/<role-1-name>
,arn:aws:iam::<aws-account-id>
:role/<role-2-name>
,arn:aws:iam::<aws-account-id>
:role/<role-3-name>
'
Ejemplos
En el siguiente ejemplo, se muestran todas las bases de datos del catálogo de datos del ID de cuenta 123456789012.
SHOW DATABASES FROM DATA CATALOG ACCOUNT '123456789012'
catalog_id | database_name | database_arn | type | target_database | location | parameters --------------+---------------+--------------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------+----------+------------ 123456789012 | database1 | arn:aws:glue:us-east-1:123456789012:database/database1 | Data Catalog | | | 123456789012 | database2 | arn:aws:glue:us-east-1:123456789012:database/database2 | Data Catalog | arn:aws:redshift:us-east-1:123456789012:datashare:035c45ea-61ce-86f0-8b75-19ac6102c3b7/database2 | |
Los siguientes son ejemplos que demuestran cómo visualizar todas las bases de datos del catálogo de datos desde el ID de cuenta 123456789012 utilizando las credenciales de un rol de IAM.
SHOW DATABASES FROM DATA CATALOG ACCOUNT '123456789012' IAM_ROLE default;
SHOW DATABASES FROM DATA CATALOG ACCOUNT '123456789012' IAM_ROLE <iam-role-arn>;