‫MySQL,‏ MariaDB ו-SingleStore

ניבים שבהם משתמשים בהוראות האלה

הדרישות להגדרת מסד הנתונים שמתוארות בדף הזה רלוונטיות ל-MySQL, ל-MariaDB ול-SingleStore (לשעבר MemSQL).

הצפנת התנועה ברשת

מומלץ להצפין את תעבורת הנתונים ברשת בין אפליקציית Looker לבין מסד הנתונים. כדאי לשקול אחת מהאפשרויות שמתוארות בדף הפעלת גישה מאובטחת למסד נתונים.

אם אתם רוצים להשתמש בהצפנת SSL, כדאי לעיין בדף הזה במסמכי התיעוד של MySQL.

משתמשים ואבטחה

כדי ליצור את משתמש Looker ולהעניק לו את הגישה הנדרשת, פועלים לפי ההוראות בקטע שמתאים לניב ולגרסה של מסד הנתונים:

‫MySQL 8.0.X:

ב-MySQL 8.0.X, פלאגין האימות שמוגדר כברירת מחדל הוא caching_sha2_password. ‫Looker משתמש בפלאגין mysql_native_password כדי לנסות לבצע אימות למסדי נתונים של MySQL באמצעות מנהל ההתקן של JDBC. כדי שהגרסה הזו של MySQL תפעל בצורה תקינה, צריך לבצע את הפעולות הנוספות הבאות:

  1. מגדירים את מסד הנתונים של MySQL לשימוש בתוסף mysql_native_password. אפשר לעשות זאת בכמה דרכים, והן תלויות באופן הפריסה של מסד הנתונים שלכם ב-MySQL 8 ובסוג הגישה שיש לכם להגדרה:

    • מתחילים את התהליך עם הדגל --default-auth=mysql_native_password

    • מגדירים את המאפיין בקובץ התצורה my.cnf:

    [mysqld]
    default-authentication-plugin=mysql_native_password
    
    • אם מופע מסד הנתונים שלכם מתארח דרך AWS RDS, צריך להגדיר את הפרמטר default_authentication_plugin דרך קבוצת פרמטרים של RDS שמוחלת על מופע מסד הנתונים הזה.
  2. מריצים את הפקודות הבאות, ומחליפים את some_password_here בסיסמה ייחודית ומאובטחת:

    CREATE USER looker IDENTIFIED WITH mysql_native_password BY 'some_password_here';
    GRANT SELECT ON database_name.* TO 'looker'@'%';
    

‫MySQL 5.7.X וגרסאות קודמות, MariaDB ו-SingleStore:

מריצים את הפקודות הבאות, ומחליפים את some_password_here בסיסמה ייחודית ומאובטחת:

CREATE USER looker;
SET PASSWORD FOR looker = PASSWORD ('some_password_here');
GRANT SELECT ON database_name.* TO 'looker'@'%';

הגדרת סכימה זמנית לטבלאות נגזרות מתמידות (PDT)

הדיאלקטים האלה של מסדי נתונים תומכים ביצירה של טבלאות נגזרות מתמידות (PDT). התכונה הזו יכולה להיות שימושית מאוד, ואנחנו ממליצים להפעיל אותה כשאפשר.

כדי להפעיל PDT, צריך להגדיר סכימה זמנית. הפקודות הבאות מציגות דוגמה ליצירת מסד נתונים זמני ולהענקת ההרשאות הנדרשות למשתמש looker.

אפשר לציין את שם מסד הנתונים הזמני בשדה Temp Database כשיוצרים את החיבור למסד הנתונים. אם לא מציינים שם של מסד נתונים זמני, Looker יוצר מסד נתונים זמני בשם looker_tmp. הפקודות הבאות משתמשות ב-looker_tmp, אבל אם ציינתם שם אחר למסד הנתונים הזמני, השתמשו בשם הזה במקום ב-looker_tmp.

CREATE SCHEMA looker_tmp;
GRANT
  SELECT,
  INDEX,
  INSERT,
  UPDATE,
  DELETE,
  CREATE,
  DROP,
  ALTER,
  CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';

ב-SingleStore, או אם מסד הנתונים משתמש ברפליקציה שמבוססת על GTID, צריך להשתמש בפרמטר LookML‏ create_process כדי להשתמש ב-PDT, כי GTID לא תומך בהצהרות CREATE TABLE AS SELECT.

הגדרה חלופית לטבלאות נגזרות רגילות

אם אתם לא רוצים לאפשר יצירה של טבלאות נגזרות מתמידות (PDT), אתם עדיין יכולים להשתמש בטבלאות נגזרות רגילות. כדי להשתמש בטבלאות נגזרות רגילות, עדיין צריך להוסיף הרשאות מסוימות לסכימה שנקראת looker_tmp. עם זאת, הסכימה looker_tmp לא באמת צריכה להיות קיימת במסד הנתונים.

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

הגדרת המשתנה max_allowed_packet

ב-MySQL, מגדירים את המשתנה max_allowed_packet של MySQL לערך המקסימלי שלו, 1073741824, כדי למנוע שגיאות מסוג "SQLException: Packet for query is too large".

יצירת החיבור של Looker למסד הנתונים

אחרי שמסיימים את הגדרת מסד הנתונים, אפשר להתחבר למסד הנתונים מ-Looker. כדי ליצור את החיבור בין Looker למסד הנתונים:

  1. בקטע ניהול ב-Looker, בוחרים באפשרות חיבורים ואז לוחצים על הוספת חיבור.
  2. בתפריט הנפתח ניב, בוחרים את שם הניב של מסד הנתונים: MySQL,‏ MySQL 8.0.12+‎,‏ MariaDB,‏ SingleStore או SingleStore 7+‎.

  3. ממלאים את פרטי החיבור. רוב ההגדרות משותפות לרוב הניבים של מסדי הנתונים. מידע נוסף זמין בדף התיעוד קישור Looker למסד הנתונים.

  4. כדי לוודא שהחיבור בוצע בהצלחה, לוחצים על הלחצן בדיקת החיבור בקטע פרטי הסטטוס בחלק התחתון של הדף הגדרות החיבורים.

  5. אם ב-Looker מוצגת ההודעה Can Connect, לוחצים על Connect כדי ליצור את החיבור.

החיבור למסד הנתונים יתווסף לרשימה בדף Admin (ניהול) בקטע Connections (חיבורים) ב-Looker.

פרמטרים נתמכים של JDBC

ב-MySQL,‏ MariaDB ו-SingleStore,‏ Looker תומך בפרמטרים הבאים של JDBC בשדה Additional JDBC parameters של החיבור. מידע על הפרמטרים האלה מופיע במסמכי התיעוד של מסד הנתונים.

  • allowMultiQueries
  • autocommit
  • characterSetResults
  • clientCertificateKeyStorePassword
  • clientCertificateKeyStoreUrl
  • connectionAttributes
  • connectionCollation
  • connectionTimeZone
  • connectTimeout
  • defaultAuthenticationPlugin
  • disableSslHostnameVerification
  • disconnectOnExpiredPasswords
  • enabledSslCipherSuites
  • failOverReadOnly
  • fallbackToSystemTrustStore
  • forceConnectionTimeZoneToSession
  • interactiveClient
  • lookerFailover
  • maxIdleTime
  • maxQuerySizeToLog
  • oldModeNoPrecisionTimestamp
  • password
  • passwordCharacterEncoding
  • permitMysqlScheme
  • pinGlobalTxToPhysicalConnection
  • preserveInstants
  • queryInterceptors
  • restrictedAuth
  • rewriteBatchedStatements
  • socketTimeout
  • sslMode
  • tcpKeepAlive
  • trustCertificateKeyStorePassword
  • trustCertificateKeyStoreUrl
  • useCompression
  • usePipelineAuth
  • user
  • useServerPrepStmts
  • verifyServerCertificate
  • yearIsDateType

תמיכה בתכונות

כדי ש-Looker יתמוך בתכונות מסוימות, גם הניב של מסד הנתונים צריך לתמוך בהן.

‫MySQL תומך בתכונות הבאות החל מ-Looker 26.20:

תכונה יש תמיכה?
Looker (Google Cloud core)‎
צבירה סימטרית
טבלאות נגזרות
טבלאות נגזרות מתמידות שמבוססות על SQL
טבלאות נגזרות מתמידות מבוססות LookML
תצוגות יציבות
סגירת שאילתות
טבלאות ציר שמבוססות על SQL
אזורי זמן
SSL
סיכומי ביניים
פרמטרים נוספים של JDBC
תלוי אותיות רישיות (case-sensitive)
סוג מיקום
סוג הרשימה
מאון
אחוזון ייחודי
הצגת תהליכים ב-SQL Runner
SQL Runner Describe Table
הצגת אינדקסים ב-SQL Runner
‫SQL Runner Select 10
ספירת SQL Runner
הסבר על SQL
פרטי כניסה של OAuth 2.0
הערות להוספת הקשר
מאגר חיבורים (connection pooling)
HLL sketches
מודעות מצטברת
טבלאות PDT מצטברות
אלפיות השנייה
מיקרו-שניות
תצוגות מהותיות
מדדים להשוואה בין תקופות שונות
ספירה משוערת של ערכים ייחודיים
מודלים אנליטיים במסד הנתונים
יומנים בהתאמה אישית

החל מגרסה 26.20 של Looker, גרסה 8.0.12 ואילך של MySQL תומכת בתכונות הבאות:

תכונה יש תמיכה?
Looker (Google Cloud core)‎
צבירה סימטרית
טבלאות נגזרות
טבלאות נגזרות מתמידות שמבוססות על SQL
טבלאות נגזרות מתמידות מבוססות LookML
תצוגות יציבות
סגירת שאילתות
טבלאות ציר שמבוססות על SQL
אזורי זמן
SSL
סיכומי ביניים
פרמטרים נוספים של JDBC
תלוי אותיות רישיות (case-sensitive)
סוג מיקום
סוג הרשימה
מאון
אחוזון ייחודי
הצגת תהליכים ב-SQL Runner
SQL Runner Describe Table
הצגת אינדקסים ב-SQL Runner
‫SQL Runner Select 10
ספירת SQL Runner
הסבר על SQL
פרטי כניסה של OAuth 2.0
הערות להוספת הקשר
מאגר חיבורים (connection pooling)
HLL sketches
מודעות מצטברת
טבלאות PDT מצטברות
אלפיות השנייה
מיקרו-שניות
תצוגות מהותיות
מדדים להשוואה בין תקופות שונות
ספירה משוערת של ערכים ייחודיים
מודלים אנליטיים במסד הנתונים
יומנים בהתאמה אישית

החל מגרסה 26.20 של Looker, ‏MariaDB תומך בתכונות הבאות:

תכונה יש תמיכה?
Looker (Google Cloud core)‎
צבירה סימטרית
טבלאות נגזרות
טבלאות נגזרות מתמידות שמבוססות על SQL
טבלאות נגזרות מתמידות מבוססות LookML
תצוגות יציבות
סגירת שאילתות
טבלאות ציר שמבוססות על SQL
אזורי זמן
SSL
סיכומי ביניים
פרמטרים נוספים של JDBC
תלוי אותיות רישיות (case-sensitive)
סוג מיקום
סוג הרשימה
מאון
אחוזון ייחודי
הצגת תהליכים ב-SQL Runner
SQL Runner Describe Table
הצגת אינדקסים ב-SQL Runner
‫SQL Runner Select 10
ספירת SQL Runner
הסבר על SQL
פרטי כניסה של OAuth 2.0
הערות להוספת הקשר
מאגר חיבורים (connection pooling)
HLL sketches
מודעות מצטברת
טבלאות PDT מצטברות
אלפיות השנייה
מיקרו-שניות
תצוגות מהותיות
מדדים להשוואה בין תקופות שונות
ספירה משוערת של ערכים ייחודיים
מודלים אנליטיים במסד הנתונים
יומנים בהתאמה אישית

התכונות הבאות נתמכות ב-SingleStore החל מ-Looker 26.20:

תכונה יש תמיכה?
Looker (Google Cloud core)‎
צבירה סימטרית
טבלאות נגזרות
טבלאות נגזרות מתמידות שמבוססות על SQL
טבלאות נגזרות מתמידות מבוססות LookML
תצוגות יציבות
סגירת שאילתות
טבלאות ציר שמבוססות על SQL
אזורי זמן
SSL
סיכומי ביניים
פרמטרים נוספים של JDBC
תלוי אותיות רישיות (case-sensitive)
סוג מיקום
סוג הרשימה
מאון
אחוזון ייחודי
הצגת תהליכים ב-SQL Runner
SQL Runner Describe Table
הצגת אינדקסים ב-SQL Runner
‫SQL Runner Select 10
ספירת SQL Runner
הסבר על SQL
פרטי כניסה של OAuth 2.0
הערות להוספת הקשר
מאגר חיבורים (connection pooling)
HLL sketches
מודעות מצטברת
טבלאות PDT מצטברות
אלפיות השנייה
מיקרו-שניות
תצוגות מהותיות
מדדים להשוואה בין תקופות שונות
ספירה משוערת של ערכים ייחודיים
מודלים אנליטיים במסד הנתונים
יומנים בהתאמה אישית

‫SingleStore 7+ תומך בתכונות הבאות החל מ-Looker 26.20:

תכונה יש תמיכה?
Looker (Google Cloud core)‎
צבירה סימטרית
טבלאות נגזרות
טבלאות נגזרות מתמידות שמבוססות על SQL
טבלאות נגזרות מתמידות מבוססות LookML
תצוגות יציבות
סגירת שאילתות
טבלאות ציר שמבוססות על SQL
אזורי זמן
SSL
סיכומי ביניים
פרמטרים נוספים של JDBC
תלוי אותיות רישיות (case-sensitive)
סוג מיקום
סוג הרשימה
מאון
אחוזון ייחודי
הצגת תהליכים ב-SQL Runner
SQL Runner Describe Table
הצגת אינדקסים ב-SQL Runner
‫SQL Runner Select 10
ספירת SQL Runner
הסבר על SQL
פרטי כניסה של OAuth 2.0
הערות להוספת הקשר
מאגר חיבורים (connection pooling)
HLL sketches
מודעות מצטברת
טבלאות PDT מצטברות
אלפיות השנייה
מיקרו-שניות
תצוגות מהותיות
מדדים להשוואה בין תקופות שונות
ספירה משוערת של ערכים ייחודיים
מודלים אנליטיים במסד הנתונים
יומנים בהתאמה אישית