Funciones de MySQL de ediciones de Cloud SQL
Para obtener más información sobre las funciones de las ediciones Cloud SQL Enterprise Plus y Cloud SQL Enterprise de Cloud SQL para MySQL, consulta Introducción a las ediciones de Cloud SQL.
Funciones generales de MySQL compatibles con Cloud SQL
- Bases de datos completamente administradas de MySQL Community Edition en la nube
- Instancias disponibles en América, la UE, Asia y Australia. Consulta todas las ubicaciones en las que puedes crear instancias de Cloud SQL.
- Admite la migración de bases de datos de origen a bases de datos de destino de Cloud SQL mediante Database Migration Service (DMS).
- Encriptación de los datos de clientes en las redes internas de Google, así como en tablas de bases de datos, archivos temporales y copias de seguridad
- Compatibilidad con conexiones externas seguras mediante el proxy de autenticación de Cloud SQL o el protocolo SSL/TLS
- Compatibilidad con IP privadas (acceso privado a los servicios)
- Replicación de datos entre varias zonas con conmutación por error automática
- Importación y exportación de bases de datos con
mysqldump
o importación y exportación de archivos CSV. - Compatibilidad con el protocolo de cable de MySQL y los conectores estándar de MySQL.
- Copias de seguridad automáticas y a pedido, además de recuperación de un momento determinado.
- Clonación de instancias.
- Integración en el registro y la supervisión de Google Cloud Observability.
- Cumplimiento de las normas ISO/IEC 27001
Lenguajes de aplicaciones compatibles con Cloud SQL para MySQL
Puedes usar Cloud SQL con aplicaciones de App Engine que se ejecutan en el entorno flexible y que están escritas en los siguientes formatos:
- C#
- Go
- Java
- Node.js
- PHP
- Python
- Ruby
También puedes usar Cloud SQL con aplicaciones externas que usan el protocolo estándar de MySQL.
Formas en las que puedes conectarte a instancias de Cloud SQL para MySQL
Puedes conectarte a una instancia de Cloud SQL desde los siguientes vínculos:
- Un
mysql
cliente - Herramientas de terceros como SQL Workbench o Toad para MySQL.
- Aplicaciones externas
- Aplicaciones de App Engine
- Aplicaciones que se ejecutan en Compute Engine
- Aplicaciones que se ejecutan en Google Kubernetes Engine.
- Cloud Run Functions
- Cloud Run
- Secuencias de comandos de Google Apps Script.
No se admite la conexión a Cloud SQL con un Acceso privado a Google. Sí se admite el acceso privado a los servicios. Si deseas obtener más información, consulta Opciones de acceso privado a los servicios.
Administración de usuarios en Cloud SQL para MySQL 8.0
Debido a los cambios en MySQL 8.0, no puedes usar sentencias CREATE
ni DELETE
para la administración de usuarios de MySQL. Tampoco puedes modificar los privilegios de usuario mediante las instrucciones INSERT
, UPDATE
o DELETE
. En su lugar, usa las instrucciones CREATE USER
, DROP USER
, GRANT
y REVOKE
para modificar los privilegios de usuario. A fin de obtener más información, consulta Notas de la administración de cuentas.
Nota: Ignora la información en las notas de administración de cuentas sobre cómo ejecutar mysql_upgrade
para actualizar a la versión 8.0. En su lugar, realiza la actualización mediante el procedimiento que se indica en Actualiza MySQL en una instancia.
Diferencias entre las funciones MySQL y Cloud SQL para MySQL
En general, las funciones de MySQL que proporciona una instancia de Cloud SQL son las mismas que las que proporciona una instancia de MySQL que se aloja de forma local. Sin embargo, hay algunas diferencias entre una instancia de MySQL estándar y una instancia de Cloud SQL.
Funciones de MySQL no compatibles con Cloud SQL
La siguiente función no es compatible con Cloud SQL para MySQL 5.6 y 5.7:
Las siguientes funciones no son compatibles con Cloud SQL para MySQL 8.0:
La siguiente función no es compatible con Cloud SQL para MySQL 8.4:
- GTID etiquetados: Para obtener más información sobre los GTID etiquetados, consulta "Replicación de MySQL: GTID etiquetados" en la sección Funciones agregadas o modificadas en MySQL 8.4 de las notas de la versión 8.4 de MySQL.
Además, Cloud SQL para MySQL no otorga los siguientes privilegios que se introdujeron en MySQL 8.4:
Complementos de MySQL no compatibles con Cloud SQL
- Complemento de InnoDB en Memcached
- Complemento X
- Complemento de clonación
- Encriptación de datos en reposo de InnoDB
- Componente validate_password
Instrucciones de MySQL no compatibles con Cloud SQL
Las siguientes instrucciones de SQL generan un error con el mensaje Error 1290:
The MySQL server is running with the Google option so it cannot execute this
statement
:
LOAD DATA INFILE
SELECT ... INTO OUTFILE
SELECT ... INTO DUMPFILE
INSTALL PLUGIN ...
UNINSTALL PLUGIN
CREATE FUNCTION ... SONAME ...
Las siguientes instrucciones no son compatibles porque las instancias de MySQL usan la replicación GTID:
- Declaraciones
CREATE TABLE ... SELECT
- Transacciones o instrucciones que actualizan tablas transaccionales y no transaccionales
La siguiente instrucción de MySQL no es compatible con Cloud SQL para MySQL 5.6 y 5.7, pero es compatible con Cloud SQL para MySQL 8.0.
- Declaraciones
CREATE TEMPORARY TABLE
en transacciones
Para obtener más información, consulta la documentación de MySQL.
Funciones de MySQL no compatibles con Cloud SQL
LOAD_FILE()
Funciones del programa cliente de MySQL no compatibles con Cloud SQL
mysqldump
mediante la opción--tab
o las opciones que se usan con--tab
. Esto se debe a que el privilegio FILE no se otorga a los usuarios de la instancia. El resto de las opcionesmysqldump
son compatibles. Si deseas obtener información sobre el uso de opcionesmysqldump
que optimizan tu archivo para importarlo a Cloud SQL, consulta Exporta desde tu servidor MySQL local con mysqldump.mysqlimport
sin usar la opción--local
. Esto se debe a la restricciónLOAD DATA INFILE
. Para importar datos a tu instancia de Cloud SQL, consulta cómo importar mediante un archivo de volcado o cómo importar mediante un archivo CSV.Si deseas importar bases de datos con datos binarios en la instancia de Cloud SQL, debes usar la opción
--hex-blob
conmysqldump
.Aunque
hex-blob
no es una marca obligatoria cuando usas una instancia de servidor MySQL local y el clientemysql
, lo es si deseas importar bases de datos con datos binarios a tu instancia de nube de Cloud SQL. Para importar datos a tu instancia de Cloud SQL, consulta cómo importar mediante un archivo de volcado o cómo importar mediante un archivo CSV.No todas las opciones y parámetros de MySQL se pueden editar como las marcas de Cloud SQL.
Para solicitar que se agregue una marca configurable de Cloud SQL, usa el grupo de discusión sobre Cloud SQL.
InnoDB es el único motor de almacenamiento compatible. Si deseas obtener ayuda para convertir tablas de MyISAM a InnoDB, consulta Convierte tablas a InnoDB en la documentación de MySQL.
Opciones predeterminadas de MySQL para Cloud SQL
Cloud SQL ejecuta MySQL con un conjunto específico de opciones. Si una opción puede afectar la forma en que funcionan tus aplicaciones, la anotamos aquí para que estés informado.
skip-name-resolve
Esta marca afecta cómo se resuelven los nombres de host para las conexiones de clientes. Consulta skip-name-resolve
en la documentación de MySQL.
log_bin
Esta marca informa si el registro binario está habilitado. Si se usa la opción --log-bin
, el valor de esta variable es ON
; de lo contrario, es OFF
. Consulta log_bin
en la documentación de MySQL.
Autenticación de MySQL
En esta sección, se describen los cambios realizados en la autenticación integrada de MySQL.
Complemento de autenticación predeterminado de MySQL 8.0
Cloud SQL para MySQL 8.0 usa mysql_native_password
como el complemento de autenticación predeterminado para usuarios nuevos en lugar de caching_sha2_password
. El complemento mysql_native_password
es la opción predeterminada para los usuarios de MySQL 5.6 y 5.7.
Si deseas que los usuarios nuevos usen el complemento caching_sha2_password
como la autenticación predeterminada, puedes configurar la marca de tu instancia para que default_authentication_plugin
use caching_sha2_password
.
A fin de configurar los usuarios existentes para que usen caching_sha2_password
, usa el comando ALTER USER
a fin de cambiar el complemento de autenticación.
Es posible que los usuarios que tengan la autenticación caching_sha2_password
deban usar la marca get-server-public-key
cuando se conecten. Para obtener más información, consulta Usa la autenticación instalable SHA-2 en la documentación de MySQL.
Complemento de autenticación predeterminado de MySQL 8.4
A partir de Cloud SQL para MySQL 8.4, el complemento caching_sha2_password
es el complemento de autenticación predeterminado.
Todos los usuarios internos y las cuentas de usuario nuevas que crees usarán el complemento caching_sha2_password
para la autenticación. Cloud SQL para MySQL 8.4 sigue admitiendo las cuentas de usuario existentes de Cloud SQL que usan el complemento mysql_native_password
. Estas cuentas existentes pueden seguir conectándose a instancias de Cloud SQL para MySQL después de que se hayan actualizado a MySQL 8.4.
En Cloud SQL para MySQL 8.4, el complemento de autenticación mysql_native_password
dejó de estar disponible.
Cualquier intento de crear una cuenta de usuario nueva con el complemento de autenticación mysql_native_password
obsoleto genera un error.
No puedes configurar el authentication_policy
de una cuenta en Cloud SQL para MySQL 8.4 para usar mysql_native_password
.
Para cambiar las cuentas de usuario de la base de datos existentes para que usen el complemento de autenticación caching_sha2_password
, usa el siguiente comando:
ALTER USER 'username'@'%' IDENTIFIED WITH caching_sha2_password BY 'user_password';
Reemplaza username y user_password por los valores de la cuenta de usuario que deseas actualizar.
Para obtener más información sobre las implicaciones de este cambio en la compatibilidad entre servidores, clientes y conectores, consulta caching_sha2_password as the Preferred Authentication Plugin
.
Cambios en las marcas del sistema de MySQL en Cloud SQL
Para algunas marcas del sistema MySQL, Cloud SQL usa valores diferentes de los predeterminados. No puedes cambiar los valores de estas marcas. Para obtener una lista de marcas, consulta Cambio de indicadores del sistema en Cloud SQL.
Funciones de Cloud SQL no compatibles con Cloud SQL para MySQL 8.0 y versiones posteriores
Cloud SQL para MySQL 8.0 y versiones posteriores no admiten la configuración de alta disponibilidad (HA) heredada de Cloud SQL para MySQL que usa réplicas de conmutación por error. Cloud SQL para MySQL 8.0 y versiones posteriores solo admiten la configuración de alta disponibilidad regional.
Funciones de PostgreSQL de las ediciones de Cloud SQL
Si deseas obtener más información sobre las funciones de cada edición de Cloud SQL para PostgreSQL, consulta Introducción a las ediciones de Cloud SQL.
Compatibilidad de características de PostgreSQL con Cloud SQL
- Bases de datos de PostgreSQL completamente administradas en la nube
- Instancias disponibles en América, la UE, Asia y Australia. Consulta todas las ubicaciones en las que puedes crear instancias de Cloud SQL.
- Admite la migración de bases de datos de origen a bases de datos de destino de Cloud SQL mediante Database Migration Service (DMS).
- Encriptación de los datos de clientes en las redes internas de Google, así como en tablas de bases de datos, archivos temporales y copias de seguridad
- Compatibilidad con conexiones externas seguras mediante el proxy de autenticación de Cloud SQL o el protocolo SSL/TLS
- Replicación de datos entre varias zonas con conmutación por error automática
- Importar y exportar bases de datos mediante archivos de volcado de SQL.
- Compatibilidad con el protocolo cliente-servidor de PostgreSQL y los conectores estándar de PostgreSQL.
- Copias de seguridad automáticas y a pedido, además de recuperación de un momento determinado.
- Clonación de instancias.
- Integración en el registro y la supervisión de Google Cloud Observability.
- Compatibilidad con varias versiones de PostgreSQL
- Replicación lógica
Extensiones de PostgreSQL compatibles para Cloud SQL
Cloud SQL admite muchas extensiones de PostgreSQL. Para obtener una lista completa de estas extensiones, consulta Configura extensiones de PostgreSQL.
Lenguajes de procedimientos de PostgreSQL compatibles para Cloud SQL
Cloud SQL es compatible con el lenguaje de procedimientos de SQL PL/pgSQL
.
Lenguajes compatibles con Cloud SQL para PostgreSQL
Puedes usar Cloud SQL con aplicaciones de App Engine que se ejecutan en el entorno flexible y que están escritas en los siguientes formatos:
- C#
- Go
- Java
- Node.js
- PHP
- Python
- Ruby
También puedes usar Cloud SQL con aplicaciones externas mediante el protocolo cliente-servidor estándar de PostgreSQL.
Cómo conectarte a instancias de Cloud SQL para PostgreSQL
Puedes conectarte a una instancia de Cloud SQL desde:
- Un cliente
psql
. Obtén más información. - Herramientas de terceros que usan el protocolo cliente-servidor estándar de PostgreSQL.
- Aplicaciones externas. Más información
- Aplicaciones de App Engine. Más información
- Aplicaciones que se ejecutan en Compute Engine. Más información
- Aplicaciones que se ejecutan en Google Kubernetes Engine. Más información
- Funciones de Cloud Run. Obtén más información.
- Cloud Run. Obtén más información.
No se admite la conexión a Cloud SQL con un Acceso privado a Google.
Diferencias entre PostgreSQL estándar y Cloud SQL para PostgreSQL
En general, la funcionalidad de PostgreSQL que proporciona una instancia de Cloud SQL es la misma que la que proporciona una instancia PostgreSQL alojada de forma local. Sin embargo, hay algunas diferencias entre una instancia de PostgreSQL estándar y una instancia de Cloud SQL.
Funciones no compatibles con Cloud SQL para PostgreSQL
Cualquier función que requiera privilegios de
SUPERUSER
, con las siguientes excepciones:Puedes usar la declaración
CREATE EXTENSION
solo para las extensiones compatibles.Si te asignan la función
cloudsqlsuperuser
, puedes realizar declaracionesCREATE CAST
yDROP CAST
. Para obtener más información, consulta Restricciones y privilegios de superusuario.
El método de conversión
WITHOUT FUNCTION
.Trabajadores en segundo plano personalizados.
El cliente
psql
de Cloud Shell no admite operaciones que requieran una reconexión, como la conexión a una base de datos diferente con el comando\c
.Compilación justo a tiempo (JIT) de máquina virtual de nivel bajo (LLVM).
Diferencias notables entre PostgreSQL y Cloud SQL para PostgreSQL
Algunos parámetros y opciones de PostgreSQL no están habilitados para editar como las marcas de Cloud SQL.
Para solicitar que se agregue una marca configurable de Cloud SQL, usa el Foro de Cloud SQL para PostgreSQL.
Compatibilidad de funciones de SQL Server para Cloud SQL
- Bases de datos de SQL Server completamente administradas en la nube.
- Tipos personalizados de máquinas con hasta 624 GB de RAM y 96 CPU
- Hasta 64 TB de almacenamiento disponible, con la capacidad de aumentar de manera automática el tamaño de almacenamiento según sea necesario.
- Creación y administración de instancias en la consola de Google Cloud
- Instancias disponibles en América, Europa, Asia o Australia. Consulta todas las ubicaciones en las que puedes crear instancias de Cloud SQL.
- Encriptación de los datos de clientes en las redes internas de Google, así como en tablas de bases de datos, archivos temporales y copias de seguridad
- Encriptación en columnas y a nivel de células para bases de datos de usuarios.
- Compatibilidad con conexiones externas seguras mediante el proxy de autenticación de Cloud SQL o el protocolo SSL/TLS
- Importación de bases de datos mediante archivos BAK y SQL
- Exportación de bases de datos mediante archivos BAK
- Copias de seguridad automáticas y a pedido, además de recuperación de un momento determinado.
- Clonación de instancias.
- Integración en el registro y la supervisión de Stackdriver
- Agente de SQL Server habilitado para facilitar la replicación y otros trabajos
- Replicación de datos entre varias regiones
- Configuración de una intercalación predeterminada para las bases de datos cuando creas una instancia
- Alta disponibilidad a través de un disco persistente regional.
- Integración con el servicio administrado para Microsoft Active Directory, incluida la autenticación de Windows.
- Captura de datos modificados (CDC).
- Procesamiento inteligente de consultas
- Recuperación acelerada de la base de datos
- Clasificación de datos mejorada
- Compatibilidad con codificación UTF-8
- Supervisión mejorada
- Enmascaramiento dinámico de datos (DDM)
- Servidores vinculados.
- Auditoría de SQL Server
- SQL Server Publisher
- Suscriptor de SQL Server
- SQL Server Integration Services (SSIS) que se ejecuta en un host independiente y se conecta a Cloud SQL.
- SQL Server Reporting Services (SSRS) que se ejecuta en un host independiente y se conecta a Cloud SQL
- La utilidad del programa de copia masiva (bcp). Para obtener más información sobre cómo descargar e instalar la utilidad bcp, consulta la documentación de Microsoft.
- Importa y exporta archivos de BACPAC mediante SqlPackage. Para obtener más información sobre cómo descargar e instalar SqlPackage, consulta la documentación de Microsoft.
- Inserción masiva para importar datos. Esta función solo es compatible con SQL Server 2022. Puedes usar un procedimiento almacenado para realizar una inserción masiva. Si deseas obtener más información, consulta Usa la inserción masiva para importar datos.
- Siempre encriptado sin enclaves seguros.
- Eventos extendidos (XEvents)
- Compatibilidad con zonas horarias personalizadas en la creación de instancias y después de ella
Las funciones de SQL Server no están disponibles para Cloud SQL
Las siguientes funciones no están disponibles en Cloud SQL y Google Cloud no las admite:
Las funciones generales de SQL Server no están disponibles para Cloud SQL
- SQL Server Analysis Services (SSAS)
- Configuración de SP_Configure. Para obtener más información sobre esta función, consulta Configura marcas de base de datos.
- Base de datos Stretch
- Creación de una copia de seguridad en Microsoft Azure Blob Storage
- Extensión del grupo de búfer
- La función OPENROWSET
- Servicios de calidad de los datos
- Envío de registro de la base de datos
- Correo de la base de datos
- Coordinador de transacciones de distribución (MSDTC)
- Tablas de archivos
- Soporte de FILESTREAM
- Planes de mantenimiento
- Recopilador de datos de rendimiento
- Administración basada en políticas
- PolyBase
- Servicios de aprendizaje automático y de R
- Controlador de recursos
- Disparadores a nivel de servidor
- Extremos de Service Broker
- Extremos de T-SQL (todas las operaciones que usan
CREATE ENDPOINT
no están disponibles) - Servicios de datos de WCF
- La función
sysadmin
y los procedimientos almacenados en el sistema que la requieran - Grupo de búferes híbridos
- Metadatos de tempdb con optimización de memoria
- Compatibilidad de OLTP en memoria para instantáneas de base de datos
- Registra idiomas externos
- Seguridad a nivel de la fila
- Encriptación de datos transparente (TDE) Para obtener información sobre la encriptación en Google Cloud, consulta Acerca de las claves de encriptación administradas por el cliente (CMEK) y Encriptación en reposo predeterminada.
- Copia de seguridad y restablecimiento del almacenamiento de objetos
- Base de datos en la memoria: memoria persistente
- Estadísticas operativas en tiempo real
- Aceleración y descarga integradas
- Grupo de búferes híbridos con escritura directa
- Replicación de escritura múltiple
- Vínculo a la instancia administrada de Azure SQL
- Grupo de disponibilidad contenido
- Siempre encriptado con enclaves seguros
- Autenticación de Azure Active Directory
- Compatibilidad con certificados PFX y otras mejoras criptográficas
- Protocolo MS-TDS 8.0 y TLS 1.3
Otras operaciones de SQL Server no están disponibles para Cloud SQL
- ADMINISTRACIÓN DE OPERACIONES MASIVAS
- ALTERA DE CUALQUIER CREDENCIAL
- ALTERA DE CUALQUIER NOTIFICACIÓN DE EVENTO
- ALTERA DE CUALQUIER SESIÓN DE EVENTO
- ALTERA DE RECURSOS
- ALTERA DE CONFIGURACIÓN
- AUTENTICACIÓN DE SERVIDOR
- CONTROL_SERVER
- CREACIÓN DE UNA NOTIFICACIÓN DE EVENTOS DE DDL
- CREACIÓN DE UN EXTREMO
- CREACIÓN DE UNA NOTIFICACIÓN DE EVENTOS DE RASTREO
- CONJUNTO DE ACCESO EXTERNO
- RESTABLECER
- APAGADO
- ENSAMBLAJES CLR
Sintaxis compatible con Cloud SQL para SQL Server
Cloud SQL admite la sintaxis Transact-SQL.
Idiomas admitidos de Cloud SQL para SQL Server
Puedes usar Cloud SQL con aplicaciones de App Engine que se ejecutan en el entorno flexible y que están escritas en los siguientes formatos:
- C#
- Go
- Java
- Node.js
- PHP
- Python
- Ruby
Cómo conectarte a instancias de Cloud SQL para SQL Server
Puedes conectarte a una instancia de Cloud SQL desde:
No se admite la conexión a Cloud SQL con un Acceso privado a Google.