PostgreSQL

Dialekte, für die diese Anweisungen relevant sind

Für die folgenden Dialekte gelten dieselben Anforderungen für die Datenbankeinrichtung, wie auf dieser Seite beschrieben:

  • PostgreSQL
  • Google Cloud SQL for PostgreSQL
  • Microsoft Azure PostgreSQL
  • AlloyDB for PostgreSQL
  • Amazon Aurora PostgreSQL
  • Amazon RDS for PostgreSQL

Netzwerk-Datenverkehr verschlüsseln

Es empfiehlt sich, den Netzwerkverkehr zwischen der Looker-Anwendung und Ihrer Datenbank zu verschlüsseln. Sehen Sie sich eine der Optionen an, die auf der Dokumentationsseite Sicheren Datenbankzugriff aktivieren beschrieben werden.

Wenn Sie sich für die SSL-Verschlüsselung interessieren, lesen Sie die PostgreSQL-Dokumentation.

Benutzer und Sicherheit

Ändern Sie some_password_here in ein eindeutiges, sicheres Passwort:

CREATE USER looker WITH ENCRYPTED PASSWORD 'some_password_here';
GRANT CONNECT ON DATABASE database_name to looker;
\c database_name
GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO looker;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO looker;

Wenn Sie ein anderes Schema als public verwenden, führen Sie diesen Befehl aus, um Looker Nutzungsberechtigungen zu gewähren:

GRANT USAGE ON SCHEMA schema_name TO looker;

Führen Sie die folgenden Befehle aus, damit zukünftige Tabellen, die Sie dem öffentlichen Schema hinzufügen, auch für den looker-Nutzer verfügbar sind:

ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON tables TO looker;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON sequences TO looker;

Abhängig von Ihrer Einrichtung müssen vorangehende Befehle möglicherweise angepasst werden. Wenn ein anderer Nutzer oder eine andere Rolle Tabellen erstellt, für die der looker-Nutzer zukünftige Berechtigungen benötigt, müssen Sie eine Zielrolle oder einen Nutzer angeben, für den/die die Berechtigung des Nutzerslooker gelten soll:

ALTER DEFAULT PRIVILEGES FOR USER <USER_WHO_CREATES_TABLES> IN SCHEMA public GRANT SELECT ON tables TO looker;
ALTER DEFAULT PRIVILEGES FOR ROLE <ROLE_THAT_CREATES_TABLES> IN SCHEMA public GRANT SELECT ON sequences TO looker;

Wenn beispielsweise ein web_app-Nutzer Tabellen erstellt und Sie möchten, dass der looker-Nutzer diese Tabellen verwenden kann, müssen Sie eine GRANT-Anweisung ausführen, um dem looker-Nutzer Berechtigungen für Tabellen zu erteilen, die vom web_app-Nutzer erstellt wurden. Die Zielrolle bzw. der Zielnutzer ist in diesem Fall der Nutzer web_app. Das bedeutet, dass wir auf Tabellen abzielen, die von web_app erstellt werden, damit der Nutzer looker über Berechtigungen zum Lesen der Tabellen verfügt. Hier ein Beispiel:

ALTER DEFAULT PRIVILEGES FOR USER web_app IN SCHEMA public GRANT SELECT ON tables TO looker;

Weitere Informationen finden Sie auf der PostgreSQL-Website unter ALTER DEFAULT PRIVILEGES.

Einrichtung eines temporären Schemas

Selbst gehostete Postgres

Erstellen Sie ein Schema, das dem looker-Nutzer gehört:

CREATE SCHEMA looker_scratch AUTHORIZATION looker;

Postgres auf Amazon RDS

Erstellen Sie ein Scratch-Schema:

CREATE SCHEMA looker_scratch;

Ändern Sie die Inhaberschaft des Scratch-Schemas auf den Nutzer looker:

ALTER SCHEMA looker_scratch OWNER TO looker;

search_path festlegen

Legen Sie schließlich einen geeigneten search_path fest, mit dem der SQL-Runner von Looker bestimmte Metadaten aus Ihrer Datenbank abruft. Wenn Sie einen Nutzer mit dem Namen looker und ein temporäres Schema namens looker_scratch erstellt haben, führen Sie den folgenden Befehl aus:

ALTER USER looker SET search_path TO '$user',looker_scratch,schema_of_interest,public
                                                            ^^^^^^^^^^^^^^^^^^
                                                            ^^^^^^^^^^^^^^^^^^
                                             include a comma-separated list of
                                            all schemas you'll use with Looker

Looker-Verbindung zu Ihrer Datenbank erstellen

Führen Sie die folgenden Schritte aus, um die Verbindung von Looker zu Ihrer Datenbank zu erstellen:

  1. Wählen Sie im Bereich Admin von Looker die Option Verbindungen aus und klicken Sie dann auf Verbindung hinzufügen.
  2. Wählen Sie im Drop-down-Menü Dialekt den Namen des Datenbankdialekts aus. Wählen Sie für den AlloyDB for PostgreSQL-Dialekt PostgreSQL 9.5 oder höher aus.

  3. Geben Sie die Verbindungsdetails ein. Die meisten Einstellungen sind den meisten Datenbankdialekten gemeinsam. Weitere Informationen finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden.

  4. Klicken Sie auf Testen, um zu prüfen, ob die Verbindung erfolgreich hergestellt wurde. Informationen zur Fehlerbehebung finden Sie auf der Dokumentationsseite Datenbankkonnektivität testen.

  5. Klicken Sie auf Verbinden, um diese Einstellungen zu speichern.

Unterstützte Funktionen

Damit Looker einige Funktionen unterstützen kann, müssen diese auch von Ihrem Datenbankdialekt unterstützt werden.

PostgreSQL 9.5 und höher unterstützt ab Looker 24.8 die folgenden Funktionen:

Funktion Unterstützt?
Supportstufe
Unterstützt
Looker (Google Cloud Core)
Yes
Symmetrische Summen
Yes
Abgeleitete Tabellen
Yes
Abgeleitete SQL-Tabellen
Yes
Nichtflüchtige native abgeleitete Tabellen
Yes
Stabile Ansichten
Yes
Abfrage beenden
Yes
SQL-basierte Pivots
Yes
Zeitzonen
Yes
SSL
Yes
Zwischensummen
Yes
Zusätzliche JDBC-Parameter
Yes
Groß-/Kleinschreibung beachten
Yes
Standorttyp
Yes
Listentyp
Yes
Perzentil
Yes
Unterschiedliche Perzentile
Yes
SQL-Runner-Show-Prozesse
Yes
SQL-Runner – Tabelle beschreiben
Yes
SQL Runner – Indexe anzeigen
Yes
SQL Runner Select 10
Yes
Anzahl der SQL-Runner
Yes
SQL erklären
Yes
OAuth-Anmeldedaten
Nein
Kontextkommentare
Yes
Verbindungs-Pooling
Yes
HLL-Skizzen
Nein
Aggregatfunktion
Yes
Inkrementelle PDTs
Yes
Millisekunden
Yes
Mikrosekunden
Yes
Materialisierte Ansicht
Nein
Ungefähre Anzahl unterschiedlich
Nein

Google Cloud PostgreSQL unterstützt ab Looker 24.8 die folgenden Funktionen:

Funktion Unterstützt?
Supportstufe
Unterstützt
Looker (Google Cloud Core)
Yes
Symmetrische Summen
Yes
Abgeleitete Tabellen
Yes
Abgeleitete SQL-Tabellen
Yes
Nichtflüchtige native abgeleitete Tabellen
Yes
Stabile Ansichten
Yes
Abfrage beenden
Yes
SQL-basierte Pivots
Yes
Zeitzonen
Yes
SSL
Yes
Zwischensummen
Yes
Zusätzliche JDBC-Parameter
Yes
Groß-/Kleinschreibung beachten
Yes
Standorttyp
Yes
Listentyp
Yes
Perzentil
Yes
Unterschiedliche Perzentile
Yes
SQL-Runner-Show-Prozesse
Yes
SQL-Runner – Tabelle beschreiben
Yes
SQL Runner – Indexe anzeigen
Yes
SQL Runner Select 10
Yes
Anzahl der SQL-Runner
Yes
SQL erklären
Yes
OAuth-Anmeldedaten
Nein
Kontextkommentare
Yes
Verbindungs-Pooling
Yes
HLL-Skizzen
Nein
Aggregatfunktion
Yes
Inkrementelle PDTs
Yes
Millisekunden
Yes
Mikrosekunden
Yes
Materialisierte Ansicht
Nein
Ungefähre Anzahl unterschiedlich
Nein

Microsoft Azure PostgreSQL unterstützt ab Looker 24.8 die folgenden Funktionen:

Funktion Unterstützt?
Supportstufe
Unterstützt
Looker (Google Cloud Core)
Yes
Symmetrische Summen
Yes
Abgeleitete Tabellen
Yes
Abgeleitete SQL-Tabellen
Yes
Nichtflüchtige native abgeleitete Tabellen
Yes
Stabile Ansichten
Yes
Abfrage beenden
Yes
SQL-basierte Pivots
Yes
Zeitzonen
Yes
SSL
Yes
Zwischensummen
Yes
Zusätzliche JDBC-Parameter
Yes
Groß-/Kleinschreibung beachten
Yes
Standorttyp
Yes
Listentyp
Yes
Perzentil
Yes
Unterschiedliche Perzentile
Yes
SQL-Runner-Show-Prozesse
Yes
SQL-Runner – Tabelle beschreiben
Yes
SQL Runner – Indexe anzeigen
Yes
SQL Runner Select 10
Yes
Anzahl der SQL-Runner
Yes
SQL erklären
Yes
OAuth-Anmeldedaten
Nein
Kontextkommentare
Yes
Verbindungs-Pooling
Yes
HLL-Skizzen
Nein
Aggregatfunktion
Yes
Inkrementelle PDTs
Yes
Millisekunden
Yes
Mikrosekunden
Yes
Materialisierte Ansicht
Nein
Ungefähre Anzahl unterschiedlich
Nein