Configura MySQL como un servicio proporcionado por el usuario
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En este documento, aprenderás a vincular tu aplicación a una instancia de MySQL que no aparece en el mercado de Kf (incluido Cloud SQL para MySQL) con Spring Cloud Foundry Connector. Esto hace que las credenciales de MySQL se inserten en la app, al igual que la vinculación con servicios aprovisionados a través de planes de mercado.
Antes de comenzar
Asegúrate de tener MySQL instalado y que puedas acceder a él con tu clúster de Kf.
Asegúrate de que la base de datos de tu app ya se haya creado.
Asegúrate de haber orientado el espacio que ejecuta la app.
Crea la instancia proporcionada por el usuario
Para que Kf vincule correctamente una app a tu instancia de MySQL, la variable de entorno mínima es el URI (por ejemplo, mysql://username:password@host:port/dbname). Se pueden incluir pares clave-valor adicionales si lo deseas. La documentación de MySQL puede ayudarte a crear una string de URI. El siguiente ejemplo debería ser suficiente para implementaciones básicas.
Puedes confirmar las nuevas variables de entorno que se proporcionan a tu app:
kfvcap-servicesapplication-name
Actualiza la instancia proporcionada por el usuario
Si hay cambios en el entorno (por ejemplo, contraseña o actualización del host en el URI, o bien la adición de pares clave-valor nuevos) que se deben pasar a cualquier app vinculada a él, puedes actualizar la instancia proporcionada por el usuario.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-09-04 (UTC)"],[],[],null,["# Setting Up MySQL as a User-Provided Service\n\n| **Note:** You can leverage services that aren't listed in the marketplace by creating user-provided service instances that an App can bind to. Learn more about [user-provided services](../concepts/user-provided-services).\n\nThis document guides you through binding your App to a MySQL instance not listed in the Kf marketplace (including [Cloud SQL for MySQL](/sql)) with the Spring Cloud Foundry Connector. This results in the MySQL credentials being injected into the App, just like binding to services provisioned through marketplace plans.\n\nBefore you begin\n================\n\n- Ensure you have MySQL installed and accessible by your Kf cluster.\n- Ensure the database for your App has already been created.\n- Ensure you have targeted the Space running your App.\n\nCreate the user-provided instance\n=================================\n\nFor Kf to successfully bind an App to your MySQL instance, the minimum environment variable is the URI (for example `mysql://username:password@host:port/dbname`). Additional key-value pairs may be included if desired. The [MySQL documentation](https://dev.mysql.com/doc/refman/8.0/en/connecting-using-uri-or-key-value-pairs.html) can help with creating a URI string. The following example should be sufficient for basic deployments. \n\n kf cups \u003cvar translate=\"no\"\u003eservice-instance-name\u003c/var\u003e -p '{\"username\":\"\u003cvar translate=\"no\"\u003eusername\u003c/var\u003e\", \"password\":\"\u003cvar translate=\"no\"\u003epassword\u003c/var\u003e\", \"uri\":\"mysql://\u003cvar translate=\"no\"\u003eusername\u003c/var\u003e:\u003cvar translate=\"no\"\u003epassword\u003c/var\u003e@\u003cvar translate=\"no\"\u003emysql-host\u003c/var\u003e:\u003cvar translate=\"no\"\u003e3306\u003c/var\u003e/\u003cvar translate=\"no\"\u003edatabase\u003c/var\u003e\"}' -t \"mysql\"\n\nBind your App\n=============\n\nNow that the user-provided service has been created, you can bind your App to the instance name: \n\n kf bind-service \u003cvar translate=\"no\"\u003eapplication-name\u003c/var\u003e \u003cvar translate=\"no\"\u003eservice-instance-name\u003c/var\u003e\n\nRestart your App to for the changes to take effect: \n\n kf restart \u003cvar translate=\"no\"\u003eapplication-name\u003c/var\u003e\n\nYou can confirm the new environment variables being provided to your App: \n\n kf vcap-services \u003cvar translate=\"no\"\u003eapplication-name\u003c/var\u003e\n\nUpdate the user-provided instance\n=================================\n\nIf there are changes to the environment (for example password or host update in the URI, or the addition of new key-value pairs) that need to be passed on to any App bound to it, you can update the user-provided instance. \n\n kf uups \u003cvar translate=\"no\"\u003eservice-instance-name\u003c/var\u003e -p '{\"uri\":\"\u003cvar translate=\"no\"\u003enew-uri\u003c/var\u003e\", \"\u003cvar translate=\"no\"\u003esome-new-key\u003c/var\u003e\": \"\u003cvar translate=\"no\"\u003esome-new-value\u003c/var\u003e\"}'\n\nRelated documents\n=================\n\n- [VCAP_SERVICES](/migrate/kf/docs/2.3/how-to/app-runtime#vcapservices)\n- [Unbind service](../cli/kf-unbind-service)\n- [Delete service](../cli/kf-delete-service)"]]