Chiffrement du trafic réseau
Il est vivement conseillé de chiffrer le trafic réseau entre l'application Looker et votre base de données. Choisissez l'une des options décrites dans la page Activer l'accès sécurisé aux bases de données.
Si vous souhaitez utiliser le chiffrement SSL, consultez la documentation de MySQL RDS.
Options
Pour des raisons de performances, il est courant d'utiliser des bases de données d'instances dupliquées en lecture seule (également appelées instances dupliquées avec accès en lecture) avec Looker. Cela libère la base de données de production pour qu'elle puisse exécuter sa fonction principale sans aucune requête susceptible de la ralentir.
Ce document explique comment:
- Modifier une base de données dupliquée existante pour qu'elle fonctionne avec Looker
- Créer une base de données d'instances dupliquées avec accès en lecture et la configurer pour qu'elle fonctionne avec Looker
Modifier une instance dupliquée existante
Utilisateurs et sécurité
Remplacez <some_password_here>
par un mot de passe unique et sécurisé:
CREATE USER looker;
SET PASSWORD FOR looker = PASSWORD ('<some_password_here>');
GRANT SELECT ON database_name.* TO 'looker'@'%';
RDS et tables temporaires
Un indicateur en lecture seule des instances dupliquées avec accès en lecture RDS est activé, ce qui empêche Looker d'écrire dans les tables temporaires. Looker ne modifie jamais les données existantes, mais MySQL a toujours besoin d'un accès en écriture pour utiliser les tables temporaires. Pour résoudre ce problème, modifiez l'indicateur dans RDS. Dans les questions fréquentes sur RDS:
Si vous modifiez le groupe de paramètres de la base de données, vous devrez redémarrer l'instance dupliquée avec accès en lecture pour que les modifications soient prises en compte.
Créer une base de données et accorder des autorisations
Créez une base de données temporaire et accordez à l'utilisateur looker
le droit d'y écrire. L'instruction CREATE TEMPORARY
dans MySQL doit être associée à une base de données à des fins d'autorisation.
CREATE SCHEMA looker_tmp;
GRANT
SELECT,
INDEX,
INSERT,
UPDATE,
DELETE,
CREATE,
DROP,
ALTER,
CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
Créer une instance dupliquée
Notez qu'AWS RDS ne peut créer des instances dupliquées avec accès en lecture qu'avec des instances de base de données pour lesquelles la conservation des sauvegardes est activée.
Étapes préalables à l'exécution d'AWS
Étape 1
mysql
dans la base de données qui deviendra l'instance de base de données principale:
mysql -h hostname.uid.region.rds.amazonaws.com -P 3306 -u root -p
Étape 2
Créez un utilisateur nommé looker
(remplacez <some_password_here>
par un mot de passe unique et sécurisé):
CREATE USER looker IDENTIFIED BY '<some_password_here>';
Étape 3
créer une base de données temporaire et accorder des droits de lecture à Looker pour d'autres bases de données et tables ; Looker n'écrit généralement pas dans la base de données looker_tmp
, mais l'utilise pour exécuter les commandes CREATE TEMPORARY TABLE
.
CREATE SCHEMA looker_tmp;
GRANT
SELECT,
INDEX,
INSERT,
UPDATE,
DELETE,
CREATE,
DROP,
ALTER,
CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
GRANT
SELECT,
SHOW DATABASES
ON *.* TO 'looker'@'%';
Étape 4
Vider les privilèges:
FLUSH PRIVILEGES;
Étapes AWS
Étape 1
Connectez-vous et accédez au tableau de bord AWS. Dans la section Base de données, sélectionnez RDS.
Étape 2
Dans votre tableau de bord RDS, sélectionnez l'instance de base de données que vous souhaitez spécifier comme base de données principale. Sélectionnez Actions sur l'instance, puis Créer une instance dupliquée avec accès en lecture.
Étape 3
Dans le pop-up Créer une instance dupliquée de base de données avec accès en lecture, configurez la base de données d'instances dupliquées avec accès en lecture et sélectionnez Oui, créer une instance dupliquée avec accès en lecture.
Étape 4
En attendant que la base de données d'instances dupliquées avec accès en lecture soit créée, vous pouvez configurer le groupe de paramètres de base de données. Celui-ci contient les valeurs de configuration du moteur appliquées à l'instance de base de données répliquée avec accès en lecture. Sélectionnez la page Groupes de paramètres de base de données dans la barre latérale, puis cliquez sur le bouton Créer un groupe de paramètres de base de données.
Étape 5
Sélectionnez la famille de groupes de paramètres de base de données et le nom du groupe de paramètres de base de données, puis saisissez la description du groupe de paramètres de base de données. Sélectionnez ensuite Oui, créer.
Étape 6
Cliquez sur l'icône Loupe sur la ligne contenant le groupe de paramètres de la base de données dupliquée avec accès en lecture ou sélectionnez cette ligne et sélectionnez Modifier les paramètres.
Étape 7
Dans le champ Filtres, sous Paramètres, recherchez "read_only". Remplacez la valeur du paramètre par 0
. Sélectionnez ensuite Enregistrer les modifications.
Étape 8
Lorsque la création de l'instance dupliquée avec accès en lecture est terminée, sélectionnez-la dans la liste des instances de base de données, cliquez sur le bouton Action d'instance, puis sélectionnez Modifier dans l'action d'instance.
Étape 9
Dans le pop-up Modifier l'instance de base de données, vous devez remplacer le groupe de paramètres de l'instance de base de données par le nouveau groupe de paramètres d'instance dupliquée avec accès en lecture. Cochez ensuite la case Appliquer immédiatement, sélectionnez Continuer, puis Modifier l'instance de base de données.
Étape 10
À l'aide du client MySQL, connectez-vous à l'instance de base de données dupliquée avec accès en lecture en tant que looker
et vérifiez si les données sont accessibles.
Créer la connexion Looker à votre base de données
Dans la section Administration de Looker, sélectionnez Connexions, puis cliquez sur Ajouter une connexion.
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 a réussi, cliquez sur Tester. Pour en savoir plus sur le dépannage, consultez la page de test de la connectivité de la base de données.
Pour enregistrer ces paramètres, cliquez sur Connecter.
Prise en charge de fonctionnalités
Pour que Looker prenne en charge certaines fonctionnalités, votre dialecte de base de données doit également les prendre en charge.
MySQL est compatible avec les fonctionnalités suivantes à partir de Looker 23.8:
Caractéristique | Compatible ? |
---|---|
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 |
Arrêt des requêtes | Oui |
Pivots basés sur SQL | Oui |
Fuseaux horaires | Oui |
SSL | Oui |
Sous-totaux | Oui |
Paramètres JDBC supplémentaires | Oui |
Sensible à la casse | Non |
Type d'emplacement | Oui |
Type de liste | Oui |
Centile | Oui |
Centile distinct | Oui |
Processus d'affichage de l'exécuteur SQL | Oui |
Table "Décrire" de l'exécuteur SQL | Oui |
Index d'émissions SQL Runner | Oui |
Exécuteur SQL 10 | Oui |
Nombre d'exécuteurs SQL | Oui |
SQL Explain | Oui |
Identifiants OAuth | Non |
Commentaires contextuels | Oui |
Pooling de connexions | Non |
croquis HLL | Non |
Reconnaissance d'agrégats. | Oui |
Augmentation de tables PDT | Oui |
Millisecondes | Oui |
Microsecondes | Oui |
Vues matérialisées | Non |
Nombre approximatif distinct | Non |