Descripción general
Database Migration Service proporciona una API de REST para administrar tus perfiles de conexión y trabajos de migración de forma programática. La API de REST se define por recursos asociados con la creación y administración de perfiles de conexión y trabajos de migración. Para obtener detalles sobre todos los recursos y sus métodos, consulta la Referencia de la API de Database Migration Service.
Cuando envías solicitudes directamente a la API de REST de Database Migration Service, debes crear el formulario correcto de la solicitud, autorizarla como un usuario autenticado y procesar las respuestas que se muestran. Muchas de las tareas de esta documentación proporcionan ejemplos de API con cURL.
Para ver más ejemplos del uso de las APIs, consulta la página de la solicitud en la Referencia de la API de Database Migration Service. Cada página tiene ejemplos que llaman a la API en varios lenguajes de programación, así como un explorador específico de la solicitud para ayudarte a ver qué se incluye en una solicitud bien formada y qué esperar en la respuesta.
También usas la API de Database Migration Service, de forma indirecta, cuando usas cualquiera de las siguientes formas de administración de instancias:
Google Cloud CLI: Es una interfaz de línea de comandos (CLI) que puedes usar para trabajar con tus instancias.
Google Cloud console: Una interfaz web gráfica.
La ventaja de usar estos métodos, en especial la consola deGoogle Cloud , es que pueden simplificar en gran medida la administración de tus perfiles de conexión y trabajos de migración (según tu caso de uso). Si estás empezando a usar Database Migration Service, te recomendamos que primero comiences con una de estas herramientas antes de trabajar directamente con la API de REST.
Habilita la API
Para usar la API de Database Migration Service, debes habilitarla:
Console
- Habilita la API de Database Migration Service.
- Elige tu proyecto.
- Selecciona Continuar.
gcloud
- Ingresa lo siguiente para mostrar los IDs de tus proyectos de Google Cloud:
gcloud projects list
- Configura tu proyecto predeterminado:
gcloud config set project YOUR_PROJECT_ID
- Habilita la API de Administrador de Cloud SQL.
gcloud services enable datamigration.googleapis.com
Permisos
Debes tener los permisos necesarios para usar la API de Database Migration Service. Estos permisos incluyen los siguientes:
- Administrador de migración de bases de datos: Con este permiso, un usuario obtiene acceso a todos los recursos de Database Migration Service que se usan para administrar perfiles de conexión y trabajos de migración.
- Visor de migración de bases de datos: Con este permiso, un usuario tiene acceso de solo lectura a los perfiles de conexión y a los trabajos de migración en Database Migration Service.
- Administrador de Cloud SQL: Con este permiso, un usuario puede crear y administrar perfiles de conexión y trabajos de migración para Cloud SQL en Database Migration Service.
Google Cloud ofrece Identity and Access Management (IAM), que te permite brindar acceso más detallado a recursos específicos de Google Cloud y evita el acceso no deseado a otros recursos. Puedes obtener y configurar permisos para Database Migration Service con la consola de Google Cloud, los métodos de IAM de la API o Google Cloud CLI. Para obtener más información, consulta Otorga, cambia y revoca el acceso a los recursos.
Ejemplos de API
Para ver ejemplos de cómo usar la API de Database Migration Service con cURL, consulta Administra perfiles de conexión con la API y Administra trabajos de migración con la API.
Proporciona datos JSON desde un archivo
Cuando usas la API con cURL, proporcionas los valores de las propiedades con la línea de comandos. Si trabajas con valores sensibles, como contraseñas o claves de seguridad, proporcionarlos en la línea de comandos representa un riesgo de seguridad. Para mayor seguridad, puedes crear un archivo que contenga los datos JSON de la llamada a la API y proporcionar la ruta de acceso al archivo en la línea de comandos.
Para proporcionar datos JSON a tu llamada a la API de cURL desde un archivo, haz lo siguiente:
Crea un archivo que contenga todo lo encerrado entre comillas simples para el campo
--data
.Incluye los corchetes, pero no las comillas simples.
En la línea de comandos, proporciona la ruta de acceso al archivo, precedida por el carácter
@
, como el parámetro--data
:--data @<path-to-file>/<filename>
Por ejemplo, para crear un perfil de conexión para una base de datos de origen de Cloud SQL, puedes crear un archivo llamado
request.json
con el siguiente contenido:{ "displayName": "my Cloud SQL connection profile", "mysql": { "host": "10.11.12.13", "port": 5432, "username": "myusername", "password": "mypassword" } }
Luego, usarías el siguiente comando cURL en la línea de comandos:
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \ --header 'Content-Type: application/json' \ --data @./request.json \ -X POST \ https://datamigration.googleapis.com/v1/projects/myProject/locations/myLocation/connectionProfiles?connectionProfileId=myCloudSQLconnectionprofile
Cómo trabajar con llamadas a la API de larga duración
Algunas llamadas a la API, como la creación de objetos, pueden tardar un tiempo en completarse. Debido a que la API es asíncrona, la llamada se muestra de inmediato, incluso si la operación aún está en curso. Si una llamada a la API posterior usa el objeto creado recientemente, debes esperar a que se complete la primera operación antes de continuar.
Puedes usar la API de Database Migration Service para administrar operaciones. Esto incluye lo siguiente:
Database Migration Service y el Servicio de descubrimiento de APIs de Google
El Servicio de descubrimiento de las APIs de Google es un servicio que puedes usar para descubrir las APIs de Google. Por ejemplo, cuando usas la herramienta Explorador de APIs de Google , estás usando el servicio de descubrimiento.
En el servicio de descubrimiento, Database Migration Service se representa como "datamigration" (por ejemplo: https://datamigration.googleapis.com/$discovery/rest?version=v1).