Consulta de instancias de base de datos
Función
Esta API se utiliza para consultar instancias de base de datos de acuerdo con los criterios de búsqueda.
- Antes de invocar a una API, debe entender la API de Autenticación.
URI
- Formato de URI
GET /v3/{project_id}/instances?id={id}&name={name}&type={type}&datastore_type={datastore_type}&vpc_id={vpc_id}&subnet_id={subnet_id}&offset={offset}&limit={limit}&tags={key}={value}
- Descripción de parámetro
Tabla 1 Descripción de parámetro Nombre
Tipo
Obligatorio
Descripción
project_id
String
Sí
Especifica el ID de proyecto de un tenant en una región.
Para obtener más información sobre cómo obtener el ID del proyecto, consulte Obtención de un ID de proyecto.
id
String
No
Especifica el ID de instancia de base de datos.
El asterisco (*) está reservado para el sistema. Si el ID de instancia comienza con *, indica que la coincidencia difusa se realiza en función del valor siguiente * De lo contrario, la coincidencia exacta se realiza en función del ID de instancia. El valor no puede contener solo asteriscos (*).
name
String
No
Especifica el nombre de instancia de base de datos.
El asterisco (*) está reservado para el sistema. Si el nombre de la instancia comienza por *, indica que se realiza una coincidencia difusa basada en el valor siguiente * De lo contrario, la coincidencia exacta se realiza basada en el nombre de la instancia. El valor no puede contener solo asteriscos (*).
type
String
No
Especifica la consulta basada en el tipo de instancia. El valor es Single, Ha, Replica, o Enterprise, que corresponde a instancia única, instancia principal/en espera, réplica de lectura e instancia distribuida (empresa), respectivamente.
datastore_type
String
No
Especifica el tipo de base de datos. Su valor puede ser cualquiera de los siguientes y distingue entre mayúsculas y minúsculas:
- MySQL
- PostgreSQL
- SQLServer
vpc_id
String
No
Especifica el ID de la VPC.
- Método 1: Inicie sesión en la consola de VPC y vea el ID de VPC en los detalles de la VPC.
- Method 2: See the "Querying VPCs" section in the Virtual Private Cloud API Reference.
subnet_id
String
No
Especifica el ID de red de la subred.
- Method 1: Log in to VPC console and click the target subnet on the Subnets page. You can view the network ID on the displayed page.
- Method 2: See the "Querying Subnets" section in the Virtual Private Cloud API Reference.
offset
Integer
No
Especifica la posición del índice. Si offset se establece en N, la consulta de recursos comienza desde el dato N+1. El valor es 0 de forma predeterminada, lo que indica que la consulta comienza desde el primer dato. El valor no puede ser un número negativo.
limit
Integer
No
Especifica el número de registros que se van a consultar. El valor predeterminado es 100. El valor no puede ser un número negativo. El valor mínimo es de 1 y el valor máximo de 100.
tags
Array of objects
No
Especifica consultas basadas en los valores y claves de etiqueta de instancia.
- {key} indica la clave de etiqueta. Debe ser único y no puede estar vacío.
- {value} indica el valor de la etiqueta, que puede dejarse vacío.
Para consultar instancias con varias claves y valores de etiquetas, separe los pares de clave-valor con comas (,). Se admite un máximo de 20 de pares de clave-valor.
Para obtener más información, consulte Tabla 2.
Tabla 2 descripción de estructura de datos de campo de etiquetas Nombre
Tipo
Obligatorio
Descripción
key
String
Sí
Clave de etiqueta. Debe constar de 1 a 128 caracteres Unicode, incluidos letras, dígitos, espacios y caracteres especiales _.:=+-@. Sin embargo, no puede comenzar o terminar con un espacio, o comenzar con _sys_.
value
String
No
Valor de etiqueta. Puede dejarse en blanco o contener un máximo de 255 caracteres Unicode, incluyendo letras, dígitos, espacios y caracteres especiales _.:=+-@
Solicitud
- Ejemplo de URI
- Consultar todas las instancias de base de datos
GET https://{endpoint}/v3/97b026aa9cc4417888c14c84a1ad9860/instances
- Consulta de instancias de base de datos basadas en criterios de búsqueda
GET https://{endpoint}/v3/97b026aa9cc4417888c14c84a1ad9860/instances?id=ed7cc6166ec24360a5ed5c5c9c2ed726in01&name=hy&type=Ha&datastore_type=MySQL&vpc_id=19e5d45d-70fd-4a91-87e9-b27e71c9891f&subnet_id=bd51fb45-2dcb-4296-8783-8623bfe89bb7&offset=0&limit=10&tags=rds001=001,rds002=002
- Consultar todas las instancias de base de datos
Respuesta
- Respuesta normal
Tabla 3 Descripción de parámetro Nombre
Tipo
Descripción
instances
Array of objects
Indica la información de instancia de base de datos.
Para obtener más información, consulte Tabla 4.
total_count
Integer
Indica el número total de registros.
Tabla 4 descripción de la estructura de datos de campo de instancias Nombre
Tipo
Descripción
id
String
Indica el ID de instancia de base de datos.
name
String
Indica el nombre de instancia de base de datos creado.
status
String
Indica el estado de la instancia de base de datos.
Valor:
Si el valor es de BUILD, se está creando la instancia de base de datos.
Si el valor es ACTIVE, la instancia de base de datos es normal.
Si el valor es de FAILED, la instancia de base de datos es anormal.
Si el valor es de FROZEN, la instancia de base de datos se congela.
Si el valor es de MODIFYING, se está escalando la instancia de base de datos.
Si el valor es de REBOOTING, se está reiniciando la instancia de base de datos.
Si el valor es de RESTORING, se está restaurando la instancia de base de datos.
Si el valor es de MODIFYING INSTANCE TYPE, la instancia de base de datos está cambiando de primaria a en espera.
Si el valor es de SWITCHOVER, se está realizando la conmutación primaria/en espera.
Si el valor es de MIGRATING, se está migrando la instancia de base de datos.
Si el valor es de BACKING UP, se está realizando una copia de respaldo de la instancia de base de datos.
Si el valor es de MODIFYING DATABASE PORT, se está cambiando el puerto de la base de datos.
Si el valor es de STORAGE FULL, el espacio de almacenamiento de la instancia de base de datos está lleno.
alias
String
Indica el alias de instancia de base de datos.
private_ips
List<String>
Indica la lista de direcciones IP privadas. Es una cadena en blanco hasta que se crea un ECS.
private_dns_names
List<String>
Indica la lista de nombres de dominio privados de la instancia de base de datos. Después de crear una instancia de base de datos, debe solicitar manualmente un nombre de dominio privado, o el nombre de dominio privado se deja en blanco.
public_dns_names
List<String>
Indica la lista de nombres de dominio público de la instancia de base de datos. Actualmente, solo RDS for SQL Server admite nombres de dominio público. Después de crear una instancia de base de datos, debe solicitar manualmente un nombre de dominio público, o el nombre de dominio público se deja en blanco.
public_ips
List<String>
Indica la lista de direcciones IP públicas.
port
Integer
Indica el número de puerto de la base de datos.
- Las instancias de RDS for MySQL pueden usar los puertos de base de datos 1024 a 65535, excluidos 12017 y 33071, que están reservados para el uso del sistema RDS.
- Las instancias de RDS for PostgreSQL pueden utilizar los puertos de base de datos 2100 a 9500.
- Las instancias de RDS for SQL Server puede utilizar el puerto de base de datos 1433 o los puertos de base de datos 2100 a 9500 (excluidos 5355 y 5985. Para Microsoft SQL Server 2017 Enterprise, Standard, y Web editions, el puerto de base de datos no se puede establecer en 5050, 5353 o 5986).
Si este parámetro no está definido, el valor predeterminado es el siguiente:
- RDS for MySQL: 3306
- RDS for PostgreSQL: 5432
- RDS for SQL Server: 1433
enable_ssl
Boolean
Indica si se debe habilitar SSL para la instancia.
- Si el valor es de true, se ha habilitado SSL para la instancia.
- Si el valor es false, SSL está deshabilitado para la instancia.
type
String
El valor es Single, Ha, Replica, o Enterprise, que corresponde a instancia única, instancia principal/en espera, réplica de lectura e instancia distribuida (empresa), respectivamente.
ha
Object
Indica la información de instancia de base de datos principal/en espera. Se devuelve solo cuando se obtiene una lista de instancias de base de datos principal/en espera.
Para obtener más información, consulte Tabla 5.
region
String
Indica la región en la que se implementa la instancia de base de datos.
datastore
Object
Indica la información de la base de datos.
Para obtener más información, consulte Tabla 6.
created
String
Indica la hora de creación en el formato "aaaa-mm-ddThh:mm:ssZ".
T es el separador entre el calendario y la notación horaria del tiempo. Z indica el desplazamiento de la zona horaria. Por ejemplo, si el desplazamiento de la zona horaria es de una hora, el valor de Z es de +0100.
El valor está vacío cuando se crea la instancia de base de datos. Después de crear la instancia de base de datos, el valor no está vacío.
updated
String
Indica la hora de actualización. El formato es el mismo que el del campo created.
El valor está vacío cuando se crea la instancia de base de datos. Después de crear la instancia de base de datos, el valor no está vacío.
db_user_name
String
Indica el nombre de usuario predeterminado.
vpc_id
String
Indica el ID de VPC.
subnet_id
String
Indica el ID de red de la subred.
security_group_id
String
Indica el ID del grupo de seguridad.
flavor_ref
String
Indica el código de especificación.
cpu
String
Indica el número de vCPU. Por ejemplo, el valor 1 indica 1 vCPU.
mem
String
Indica el tamaño de la memoria en GB.
volume
Object
Indica la información del volumen.
Para obtener más información, consulte Tabla 7.
switch_strategy
String
Indica la política de conmutación de la base de datos. El valor puede ser reliability o availability indicando primero la confiabilidad y primero la disponibilidad, respectivamente.
read_only_by_user
Boolean
Indica el estado de sólo lectura de la instancia de base de datos. Este parámetro solo está disponible para RDS for MySQL.
- true: indica que la instancia de base de datos está establecida en sólo lectura.
- false: indica que la instancia de base de datos está establecida en lectura/escritura.
backup_strategy
Object
Indica la política de copia de respaldo.
Para obtener más información, consulte Tabla 8.
maintenance_window
String
Indica la hora de inicio de la ventana de tiempo de mantenimiento en formato UTC.
nodes
Array of objects
Indica la información de instancia de base de datos principal/en espera.
Para obtener más información, consulte Tabla 9.
related_instance
Array of objects
Indica todas las instancias de base de datos asociadas.
Para obtener más información, consulte Tabla 10.
disk_encryption_id
String
Indica el ID de clave de encriptación del disco.
enterprise_project_id
String
Indica el ID del proyecto de empresa.
time_zone
String
Indica la zona horaria.
charge_info
Object
Indica la información de facturación, que es anual/mensual o pago por uso. De forma predeterminada, se utiliza el pago por uso.
Para obtener más información, consulte Tabla 11.
tags
Array of objects
Indica la lista de etiquetas. Si no hay ninguna etiqueta en la lista, se devuelve una matriz vacía.
Para obtener más información, consulte Tabla 12.
backup_used_space
Double
Indica el uso del espacio de copia de respaldo en GB.
Este campo sólo se devuelve cuando consulta información acerca de una instancia de base de datos de RDS for SQL Server especificada.
storage_used_space
Double
Indica el uso del espacio de almacenamiento en GB.
Este campo sólo se devuelve cuando consulta información acerca de una instancia de base de datos de RDS for SQL Server especificada.
order_id
String
Indica el ID de pedido. Este campo se devuelve solo cuando la instancia de base de datos se factura sobre una base anual/mensual.
associated_with_ddm
Boolean
Indica si se ha asociado una instancia DDM.
max_iops
Long
Indica la IOPS máxima de disco de la instancia.
Este campo se devuelve sólo para instancias de RDS for SQL Server.
expiration_time
String
Indica la hora en que expira una instancia. El formato es aaaa-mm-ddThh:mm:ssZ.
Este campo se devuelve solo para instancias anuales/mensuales.
Tabla 5 descripción de la estructura de datos de campo ha Nombre
Tipo
Descripción
replication_mode
String
Indica el modo de replicación de la instancia de base de datos en espera.
El valor no puede estar vacío.
- Para RDS for MySQL, el valor es async o semisync.
- Para RDS for PostgreSQL, el valor es async o sync.
- Para RDS for SQL Server, el valor es sync.
NOTA:- async indica el modo de replicación asincrónica.
- semisync indica el modo de replicación semisincrónica.
- sync indica el modo de replicación sincrónica.
Tabla 6 descripción de la estructura de datos del campo de datastore Nombre
Tipo
Descripción
type
String
Indica el motor de base de datos. Su valor puede ser cualquiera de los siguientes y no distingue entre mayúsculas y minúsculas:
- MySQL
- PostgreSQL
- SQLServer
version
String
Indica la versión de la base de datos.
complete_version
String
Indica el número de versión completo. Este parámetro se devuelve solo cuando el motor de base de datos es PostgreSQL.
Tabla 7 descripción de la estructura de datos de campo de volumen Nombre
Tipo
Descripción
type
String
Indica el tipo de volumen.
size
Integer
Indica el tamaño del volumen.
Tabla 8 descripción de la estructura de datos del campo backup_strategy Nombre
Tipo
Descripción
start_time
String
Indica la ventana de tiempo de copia de respaldo. Las copias de respaldo automatizadas se activarán durante la ventana de tiempo de copia de respaldo.
La hora está en formato UTC.
keep_days
Integer
Indica el número de días para conservar los archivos de copia de respaldo generados.
El valor varía de 0 a 732. Si el valor es 0, la política de copia de respaldo automatizada no está configurada o se ha deshabilitado. Para ampliar el período de retención, póngase en contacto con el servicio de atención al cliente. Las copias de respaldo automatizadas se pueden conservar hasta 2,562 días.
Tabla 9 descripción de estructura de datos de campo de nodos Nombre
Tipo
Descripción
id
String
Indica el ID de nodo.
name
String
Indica el nombre del nodo.
role
String
Indica el tipo de nodo. El valor puede ser master, slave o readreplica, que indica el nodo primario, el nodo en espera y el nodo de réplica de lectura, respectivamente.
status
String
Indica el estado del nodo.
availability_zone
String
Indica la zona de disponibilidad.
Tabla 10 descripción de la estructura de datos del campo de related_instance Nombre
Tipo
Descripción
id
String
Indica el ID de instancia de base de datos asociado.
type
String
Indica el tipo de instancia de base de datos asociada.
- replica_of: indica la instancia de base de datos principal.
- replica: indica réplicas de lectura.
Tabla 11 descripción de la estructura de datos del campo chargeInfo Nombre
Obligatorio
Tipo
Descripción
charge_mode
Sí
String
Indica el modo de facturación.
Valores válidos:
- prePaid: indica el modo de facturación anual/mensual.
- postPaid: indica el modo de facturación de pago por uso.
Tabla 12 descripción de estructura de datos de campo de etiquetas Nombre
Tipo
Descripción
key
String
Indica la clave de etiqueta.
value
String
Indica el valor de la etiqueta.
Los valores de region y available_zone se usan como ejemplos.
- Ejemplo de respuesta normal
Consultar instancias de base de datos basadas en criterios de búsqueda.
{ "instances": [{ "id": "ed7cc6166ec24360a5ed5c5c9c2ed726in01", "status": "ACTIVE", "name": "mysql-0820-022709-01", "port": 3306, "type": "Single", "region": "aaa", "datastore": { "type": "MySQL", "version": "5.7" }, "created": "2018-08-20T02:33:49+0800", "updated": "2018-08-20T02:33:50+0800", "volume": { "type": "ULTRAHIGH", "size": 100 }, "nodes": [{ "id": "06f1c2ad57604ae89e153e4d27f4e4b8no01", "name": "mysql-0820-022709-01_node0", "role": "master", "status": "ACTIVE", "availability_zone": "bbb" }], "alias": "description", "private_ips": ["192.168.0.1"], "private_dns_names": ["ed7cc6166ec24360a5ed5c5c9c2ed726in01.internal.xxx.com"], "public_dns_names": [], "public_ips": [], "enable_ssl": false, "db_user_name": "root", "vpc_id": "b21630c1-e7d3-450d-907d-39ef5f445ae7", "subnet_id": "45557a98-9e17-4600-8aec-999150bc4eef", "security_group_id": "38815c5c-482b-450a-80b6-0a301f2afd97", "flavor_ref": "rds.mysql.s1.large", "cpu": "2", "mem": "4", "switch_strategy": "", "read_only_by_user": false, "charge_info": { "charge_mode": "postPaid" }, "backup_strategy": { "start_time": "19:00-20:00", "keep_days": 7 }, "maintenance_window": "02:00-06:00", "related_instance": [], "disk_encryption_id": "", "enterprise_project_id": "0", "time_zone": "", "tags": [ { "key": "rds001", "value": "001" }, { "key": "rds002", "value": "002" } ], "associated_with_ddm": false }], "total_count": 1 }
- Consultar todas las instancias de base de datos.
{ "instances": [{ "id": "ed7cc6166ec24360a5ed5c5c9c2ed726in01", "status": "ACTIVE", "name": "mysql-0820-022709-01", "port": 3306, "type": "Single", "region": "aaa", "datastore": { "type": "MySQL", "version": "5.7" }, "created": "2018-08-20T02:33:49+0800", "updated": "2018-08-20T02:33:50+0800", "volume": { "type": "ULTRAHIGH", "size": 100 }, "nodes": [{ "id": "06f1c2ad57604ae89e153e4d27f4e4b8no01", "name": "mysql-0820-022709-01_node0", "role": "master", "status": "ACTIVE", "availability_zone": "bbb" }], "alias": "description", "private_ips": ["192.168.0.1"], "enable_ssl": false, "private_dns_names": ["ed7cc6166ec24360a5ed5c5c9c2ed726in01.internal.xxx.com"], "public_dns_names": [], "public_ips": [], "db_user_name": "root", "vpc_id": "b21630c1-e7d3-450d-907d-39ef5f445ae7", "subnet_id": "45557a98-9e17-4600-8aec-999150bc4eef", "security_group_id": "38815c5c-482b-450a-80b6-0a301f2afd97", "flavor_ref": "rds.mysql.s1.large", "cpu": "2", "mem": "4", "switch_strategy": "", "read_only_by_user": false, "charge_info": { "charge_mode": "postPaid" }, "backup_strategy": { "start_time": "19:00-20:00", "keep_days": 7 }, "maintenance_window": "02:00-06:00", "related_instance": [], "disk_encryption_id": "", "enterprise_project_id": "0", "time_zone": "", "tags": [ { "key": "rds001", "value": "001" }, { "key": "rds002", "value": "002" } ], "associated_with_ddm": false }, { "id": "ed7cc6166ec24360a5ed5c5c9c2ed726in02", "status": "ACTIVE", "name": "mysql-0820-022709-02", "port": 3306, "type": "Single", "region": "aaa", "datastore": { "type": "MySQL", "version": "5.7" }, "created": "2018-08-20T02:33:49+0800", "updated": "2018-08-20T02:33:50+0800", "volume": { "type": "ULTRAHIGH", "size": 100 }, "nodes": [{ "id": "06f1c2ad57604ae89e153e4d27f4e4b8no01", "name": "mysql-0820-022709-01_node0", "role": "master", "status": "ACTIVE", "availability_zone": "bbb" }], "alias": "description", "private_ips": ["192.168.0.1"], "private_dns_names": ["ed7cc6166ec24360a5ed5c5c9c2ed726in01.internal.xxx.com"], "public_dns_names": [], "public_ips": [], "enable_ssl": false, "db_user_name": "root", "vpc_id": "b21630c1-e7d3-450d-907d-39ef5f445ae7", "subnet_id": "45557a98-9e17-4600-8aec-999150bc4eef", "security_group_id": "38815c5c-482b-450a-80b6-0a301f2afd97", "flavor_ref": "rds.mysql.s1.large", "cpu": "2", "mem": "4", "switch_strategy": "", "read_only_by_user": false, "charge_info": { "charge_mode": "postPaid" }, "backup_strategy": { "start_time": "19:00-20:00", "keep_days": 7 }, "maintenance_window": "02:00-06:00", "related_instance": [], "disk_encryption_id": "", "enterprise_project_id": "0", "time_zone": "", "tags": [ { "key": "rds001", "value": "001" }, { "key": "rds002", "value": "002" } ], "associated_with_ddm": false }], "total_count": 2 }
- Respuesta anormal
Para obtener más información, consulte Resultados de solicitud anormales.
Código de estado
- Normal
- Anormal
Para obtener más información, consulte Códigos de estado.
Código de error
Para obtener más información, consulte Códigos de error.