Dialectes utilisant ces instructions
Les dialectes suivants partagent les exigences de configuration de la base de données, comme décrit sur cette page:
- PostgreSQL
- Google Cloud SQL pour PostgreSQL
- Microsoft Azure PostgreSQL
- AlloyDB pour PostgreSQL
- Amazon Aurora PostgreSQL
- Amazon RDS pour PostgreSQL
Pour Google Cloud SQL pour PostgreSQL, Looker (Google Cloud Core) propose les identifiants par défaut de l'application (ADC) comme méthode d'authentification. Pour en savoir plus, consultez la documentation Looker (Google Cloud Core).
Pour AlloyDB pour PostgreSQL, Amazon RDS pour PostgreSQL et Amazon Aurora PostgreSQL, Looker offre une prise en charge de l'intégration. Pour créer une connexion pour ces dialectes, sélectionnez PostgreSQL 9.5 ou version ultérieure dans le menu déroulant Dialecte de la page Nouvelle connexion.
Pour PostgreSQL sur Heroku, consultez la documentation Heroku.
Chiffrement du trafic réseau
Il est recommandé de chiffrer le trafic réseau entre l'application Looker et votre base de données. Pour ce faire, consultez les options détaillées sur la page de documentation Sécurisation de l'accès à la base de données.
Si vous envisagez d'utiliser le chiffrement SSL, consultez la documentation PostgreSQL.
Utilisateurs et sécurité
Pour effectuer des actions sur votre base de données, Looker doit disposer d'un compte utilisateur dans votre base de données.
Si vous utilisez une instance Looker (Google Cloud Core) et que vous souhaitez utiliser ADC, utilisez le nom d'utilisateur du compte de service usurpé que vous avez ajouté à votre base de données Cloud SQL. Le nom d'utilisateur du compte de service est au format service-<project number>@gcp-sa-looker.iam.gserviceaccount.com
. Si le nom d'utilisateur de votre compte de service se termine par .gserviceaccount.com
, supprimez la partie .gserviceaccount.com
du nom d'utilisateur. Une fois le nom d'utilisateur tronqué, il ressemble à service-<project number>@gcp-sa-looker.iam
.
Pour configurer un utilisateur de base de données pour Looker, procédez comme suit sur votre base de données:
Créez un utilisateur et un mot de passe de base de données.
CREATE USER USERNAME WITH ENCRYPTED PASSWORD 'PASSWORD';
Accordez des autorisations à l'utilisateur de la base de données afin que Looker puisse effectuer des actions sur votre base de données :
GRANT CONNECT ON DATABASE DATABASE_NAME to USERNAME; \c DATABASE_NAME GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO USERNAME; GRANT SELECT ON ALL TABLES IN SCHEMA public TO USERNAME;
Si vous utilisez un schéma autre que
public
, exécutez cette commande pour accorder des autorisations d'utilisation à Looker :GRANT USAGE ON SCHEMA SCHEMA_NAME TO USERNAME;
Pour vous assurer que les tables que vous ajouterez à l'avenir au schéma public seront également accessibles à l'utilisateur Looker, exécutez les commandes suivantes:
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON tables TO USERNAME; ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON sequences TO USERNAME;
En fonction de votre configuration, les commandes précédentes peuvent nécessiter une modification. Si un autre utilisateur ou rôle crée des tables pour lesquelles l'utilisateur Looker a besoin d'autorisations futures, vous devez spécifier un rôle ou un utilisateur cible auquel appliquer les autorisations de l'utilisateur Looker:
ALTER DEFAULT PRIVILEGES FOR USER ANOTHER_USERNAME IN SCHEMA SCHEMA_NAME GRANT SELECT ON tables TO USERNAME;
ALTER DEFAULT PRIVILEGES FOR ROLE TARGET_ROLE IN SCHEMA SCHEMA_NAME GRANT SELECT ON sequences TO USERNAME;
Par exemple, si un utilisateur web_app
crée des tables et que vous souhaitez que l'utilisateur looker
puisse les utiliser, vous devez exécuter une instruction GRANT
pour accorder à l'utilisateur looker
des autorisations sur les tables créées par l'utilisateur web_app
. Dans ce cas, le rôle ou l'utilisateur cible est l'utilisateur web_app
, ce qui signifie que vous souhaitez modifier les droits sur les tables créées par web_app
afin que l'utilisateur looker
puisse avoir les autorisations nécessaires pour lire les tables. Voici un exemple :
ALTER DEFAULT PRIVILEGES FOR USER web_app IN SCHEMA public GRANT SELECT ON tables TO looker;
Pour en savoir plus, consultez la section ALTER DEFAULT PRIVILEGES
sur le site Web de PostgreSQL.
Configuration d'un schéma temporaire
Postgres auto-hébergé
Créez un schéma dont le propriétaire est l'utilisateur Looker :
CREATE SCHEMA SCHEMA_NAME AUTHORIZATION USERNAME;
Postgres sous Amazon RDS
Créez un schéma entièrement nouveau :
CREATE SCHEMA SCHEMA_NAME;
Remplacez le propriétaire du nouveau schéma par l'utilisateur Looker :
ALTER SCHEMA SCHEMA_NAME OWNER TO USERNAME;
Définir search_path
Avant de connecter Looker à votre base de données, vous devez définir un search_path
approprié, que l'outil SQL Runner de Looker peut utiliser pour extraire certaines métadonnées de votre base de données :
ALTER USER USERNAME SET search_path TO '$user',SCHEMA_NAME,SCHEMA_NAME_2,SCHEMA_NAME_3
^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^
include a comma-separated list of
all schemas you'll use with Looker
Créer la connexion Looker à votre base de données
Pour créer la connexion entre Looker et votre base de données, procédez comme suit :
- Dans la section Admin de Looker, sélectionnez Connexions, puis cliquez sur Ajouter une connexion.
Dans le menu déroulant Dialecte, sélectionnez le nom de votre dialecte de base de données. Pour le dialecte AlloyDB pour PostgreSQL, sélectionnez PostgreSQL 9.5+.
Saisissez les informations de connexion. La majorité des paramètres sont communs à la plupart des dialectes de base de données. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données.
Pour vérifier que la connexion est établie, cliquez sur Test. Pour obtenir des informations sur le dépannage, consultez la page de documentation Tester la connectivité de la base de données.
Pour enregistrer ces paramètres, cliquez sur Connecter.
Compatibilité des caractéristiques
Pour que Looker prenne en charge certaines fonctionnalités, votre dialecte de base de données doit également les prendre en charge.
PostgreSQL 9.5 et versions ultérieures sont compatibles avec les fonctionnalités suivantes à partir de Looker 24.16 :
Caractéristique | Compatibilité |
---|---|
Niveau d'assistance | Compatible |
Looker (Google Cloud Core) | Oui |
Agrégations symétriques | Oui |
Tables dérivées | Oui |
Tables dérivées SQL persistantes | Oui |
Tables dérivées natives persistantes | Oui |
Vues stables | Oui |
Suppression des requêtes | Oui |
Tableaux croisés dynamiques basés sur SQL | Oui |
Fuseaux horaires | Oui |
SSL | Oui |
Sous-totaux | Oui |
Paramètres JDBC supplémentaires | Oui |
Sensible à la casse | Oui |
Type d'emplacement | Oui |
Type de liste | Oui |
Centile | Oui |
Centile distinct | Oui |
Processus d'affichage de l'exécuteur SQL | Oui |
Table de description de SQL Runner | Oui |
Index d'affichage de l'exécuteur SQL | Oui |
SQL Runner Select 10 | Oui |
Nombre d'exécuteurs SQL | Oui |
SQL Explain | Oui |
Identifiants Oauth | Non |
Commentaires sur le contexte | Oui |
Pooling des connexions | Oui |
Résumés HLL | Non |
Reconnaissance d'agrégats. | Oui |
Augmentation de tables PDT | Oui |
Millisecondes | Oui |
Microsecondes | Oui |
Vues matérialisées | Non |
Nombre approximatif d'éléments distincts | Non |
Google Cloud PostgreSQL est compatible avec les fonctionnalités suivantes à partir de Looker 24.16 :
Caractéristique | Compatibilité |
---|---|
Niveau d'assistance | Compatible |
Looker (Google Cloud Core) | Oui |
Agrégations symétriques | Oui |
Tables dérivées | Oui |
Tables dérivées SQL persistantes | Oui |
Tables dérivées natives persistantes | Oui |
Vues stables | Oui |
Suppression des requêtes | Oui |
Tableaux croisés dynamiques basés sur SQL | Oui |
Fuseaux horaires | Oui |
SSL | Oui |
Sous-totaux | Oui |
Paramètres JDBC supplémentaires | Oui |
Sensible à la casse | Oui |
Type d'emplacement | Oui |
Type de liste | Oui |
Centile | Oui |
Centile distinct | Oui |
Processus d'affichage de l'exécuteur SQL | Oui |
Table de description de SQL Runner | Oui |
Index d'affichage de l'exécuteur SQL | Oui |
SQL Runner Select 10 | Oui |
Nombre d'exécuteurs SQL | Oui |
SQL Explain | Oui |
Identifiants Oauth | Non |
Commentaires sur le contexte | Oui |
Pooling des connexions | Oui |
Résumés HLL | Non |
Reconnaissance d'agrégats. | Oui |
Augmentation de tables PDT | Oui |
Millisecondes | Oui |
Microsecondes | Oui |
Vues matérialisées | Non |
Nombre approximatif d'éléments distincts | Non |
Microsoft Azure PostgreSQL prend en charge les fonctionnalités suivantes à partir de Looker 24.16:
Caractéristique | Compatibilité |
---|---|
Niveau d'assistance | Compatible |
Looker (Google Cloud Core) | Oui |
Agrégations symétriques | Oui |
Tables dérivées | Oui |
Tables dérivées SQL persistantes | Oui |
Tables dérivées natives persistantes | Oui |
Vues stables | Oui |
Suppression des requêtes | Oui |
Tableaux croisés dynamiques basés sur SQL | Oui |
Fuseaux horaires | Oui |
SSL | Oui |
Sous-totaux | Oui |
Paramètres JDBC supplémentaires | Oui |
Sensible à la casse | Oui |
Type d'emplacement | Oui |
Type de liste | Oui |
Centile | Oui |
Centile distinct | Oui |
Processus d'affichage de l'exécuteur SQL | Oui |
Table de description de SQL Runner | Oui |
Index d'affichage de l'exécuteur SQL | Oui |
SQL Runner Select 10 | Oui |
Nombre d'exécuteurs SQL | Oui |
SQL Explain | Oui |
Identifiants Oauth | Non |
Commentaires sur le contexte | Oui |
Pooling des connexions | Oui |
Résumés HLL | Non |
Reconnaissance d'agrégats. | Oui |
Augmentation de tables PDT | Oui |
Millisecondes | Oui |
Microsecondes | Oui |
Vues matérialisées | Non |
Nombre approximatif d'éléments distincts | Non |