Dialectos que usan estas instrucciones
MySQL, Clustrix, MariaDB y SingleStore (anteriormente MemSQL) comparten los requisitos de configuración de la base de datos que se describen en esta página.
Encriptar el tráfico de red
Looker recomienda que se encripte el tráfico de red entre la aplicación de Looker y su base de datos. Considera una de las opciones que se describen en la página de documentación Habilita el acceso seguro a la base de datos.
Si te interesa usar la encriptación SSL, consulta esta página de documentación de MySQL.
Usuarios y seguridad
Para crear y otorgar el acceso requerido al usuario de Looker, sigue las instrucciones en la sección adecuada para el dialecto y la versión de tu base de datos:
MySQL 8.0.X:
La opción de dialecto MySQL 8.0.X de Looker se implementa con la versión 8.0.12+ de parche debido a una baja de MySQL en el orden implícito en la cláusula
GROUP BY
. Esto afecta a los subtotales de Looker para las versiones 8.0.0 a 8.0.11 de MySQL, lo que causa errores de generación de SQL. Looker sugiere actualizar las bases de datos de MySQL 8.0.X a 8.0.12 como mínimo para integrarlas por completo. Sin embargo, las versiones anteriores de MySQL seguirán funcionando, excepto los subtotales.
En MySQL 8.0.X, el complemento de autenticación predeterminado es caching_sha2_password
. Looker usa el complemento mysql_native_password
para intentar autenticarse en bases de datos de MySQL a través del controlador JDBC. Para que esta versión de MySQL funcione correctamente, debes realizar los siguientes pasos adicionales:
- Configura la base de datos de MySQL para usar el complemento
mysql_native_password
. Esto se puede realizar de varias maneras y dependerá de cómo se implemente la base de datos de MySQL 8 y del tipo de acceso que tengas a la configuración:- Comienza el proceso con la marca
--default-auth=mysql_native_password
-
Establece la propiedad en el archivo de configuración
my.cnf
:
``none [mysqld] default-Authentication-plugin=mysql_native_password ``` -
Si tu instancia de base de datos está alojada a través de AWS RDS, configura el parámetro
default_authentication_plugin
a través de un grupo de parámetros de RDS que se aplique a esta instancia de base de datos.
- Comienza el proceso con la marca
-
Genera las siguientes declaraciones y reemplaza
some_password_here
por una contraseña única y segura:CREATE USER looker IDENTIFIED WITH mysql_native_password BY 'some_password_here'; GRANT SELECT ON database_name.* TO 'looker'@'%';
MySQL 5.7.X y versiones anteriores, Clustrix, MariaDB y SingleStore:
Genera las siguientes declaraciones y reemplaza some_password_here
por una contraseña única y segura:
CREATE USER looker;
SET PASSWORD FOR looker = PASSWORD ('some_password_here');
GRANT SELECT ON database_name.* TO 'looker'@'%';
Configuración de esquema temporal para tablas derivadas persistentes
Estos dialectos de bases de datos admiten la creación de tablas derivadas persistentes (PDT). Esta función puede ser muy útil, por lo que le recomendamos habilitarla cuando sea posible.
Para habilitar los PDT, debes configurar un esquema temporal. Los siguientes comandos muestran un ejemplo de cómo crear una base de datos temporal y otorgar los privilegios necesarios al usuario looker
.
Puedes especificar el nombre de la base de datos temporal en el campo Base de datos de temperatura cuando crees la conexión de la base de datos. Si no especificas un nombre de base de datos temporal, Looker generará una base de datos raspa y gana con el nombre
looker_tmp
. Los siguientes comandos usanlooker_tmp
, pero si especificaste un nombre de base de datos temporal diferente, usa el nombre de tu base de datos temporal en lugar delooker_tmp
.
CREATE SCHEMA looker_tmp;
GRANT
SELECT,
INDEX,
INSERT,
UPDATE,
DELETE,
CREATE,
DROP,
ALTER,
CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
Para SingleStore, o si tu base de datos usa la replicación basada en GTID, debes usar el parámetro create_process
de LookML para usar PDT, ya que GTID no admite declaraciones CREATE TABLE AS SELECT
.
Configuración alternativa para tablas derivadas regulares
Si no deseas permitir la creación de tablas derivadas persistentes, puedes usar las tablas derivadas regulares. Para usar tablas derivadas regulares, debes agregar ciertos permisos a un esquema llamado looker_tmp
. Sin embargo, no es necesario que el esquema looker_tmp
exista en tu base de datos.
GRANT
SELECT,
INDEX,
INSERT,
DROP,
CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
-- Note that the looker_tmp schema does not need to actually exist,
-- even though these permission grants are still needed
Configura la variable max_allowed_packet
En MySQL, configura la variable max_allowed_packet
de MySQL con su valor máximo, 1073741824, a fin de evitar errores de SQL Exception: Packet for query is too big.
Compatibilidad de características
Para que Looker admita algunas funciones, el dialecto de la base de datos también debe admitirlas.
En la versión más reciente de Looker, MySQL admite las siguientes características de Looker:
En la versión más reciente de Looker, MySQL 8.0.12+ es compatible con las siguientes funciones de Looker:
En la versión más reciente de Looker, Clustrix admite las siguientes funciones de Looker:
En la versión más reciente de Looker, MariaDB es compatible con las siguientes funciones de Looker:
En la versión más reciente de Looker, SingleStore es compatible con las siguientes funciones de Looker:
En la versión más reciente de Looker, SingleStore 7+ es compatible con las siguientes funciones de Looker:
Próximos pasos
Después de completar la configuración de la base de datos, puedes conectarte a la base de datos de Looker mediante estas instrucciones.
Cuando crees conexiones, asegúrate de usar el nombre de dialecto de la base de datos correcto. Si bien las instrucciones de configuración de la base de datos son las mismas para MySQL, Clustrix, MariaDB y SingleStore, asegúrate de elegir tu dialecto específico del menú desplegable Dialect en la página Connections, que se describe a continuación.