加密網路流量
最佳做法是加密 Looker 應用程式和資料庫之間的網路流量。請考慮採用「啟用安全的資料庫存取權」說明文件頁面所述的其中一個選項。
如要使用 SSL 加密,請參閱 MySQL RDS 說明文件。
選項
基於效能考量,Looker 通常會使用唯讀副本資料庫 (也稱為唯讀副本)。這樣一來,正式資料庫就能執行主要功能,不會因查詢而降低速度。
本文說明如何執行下列任一操作:
- 修改現有的副本資料庫,以便與 Looker 搭配使用
- 建立新的唯讀副本資料庫,並設定與 Looker 搭配運作
修改現有副本
使用者與安全性
將 <some_password_here> 變更為不重複的安全密碼:
CREATE USER looker;
SET PASSWORD FOR looker = PASSWORD ('<some_password_here>');
GRANT SELECT ON database_name.* TO 'looker'@'%';
RDS 和臨時資料表
根據預設,RDS 唯讀副本會啟用唯讀標記,防止 Looker 寫入臨時資料表。Looker 絕不會實際變更現有資料,但 MySQL 仍需要寫入權限才能使用臨時資料表。只要變更 RDS 中的旗標,即可解決這個問題。RDS 常見問題:
問:唯讀副本只能接受資料庫讀取作業嗎?
唯讀副本旨在處理讀取流量。不過,在某些情況下,進階使用者可能希望對唯讀副本完成資料定義語言 (DDL) SQL 陳述式。例如,將資料庫索引新增至用於業務報表的唯讀副本,而不將相同索引新增至對應的來源資料庫執行個體。
您可以設定 Amazon RDS for MySQL,允許對唯讀副本執行 DDL SQL 陳述式。如要為特定唯讀副本啟用讀取以外的操作,請修改唯讀副本的作用中資料庫參數群組,將 read_only 參數設為 0。
Amazon RDS for PostgreSQL 目前不支援對唯讀副本執行 DDL SQL 陳述式。
如果修改資料庫參數群組,則須重新啟動唯讀副本,變更才會生效。
建立資料庫並授予權限
建立臨時資料庫,並授予 looker 使用者寫入權限。MySQL 中的 CREATE TEMPORARY 陳述式必須與資料庫建立關聯,才能授予權限。
CREATE SCHEMA looker_tmp;
GRANT
SELECT,
INDEX,
INSERT,
UPDATE,
DELETE,
CREATE,
DROP,
ALTER,
CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
建立新副本
請注意,AWS RDS 只能為已啟用「備份保留」的資料庫執行個體建立唯讀副本。
AWS 前置步驟
步驟 1
mysql 匯入資料庫,做為主要資料庫執行個體:
mysql -h hostname.uid.region.rds.amazonaws.com -P 3306 -u root -p
步驟 2
建立名為 looker 的使用者 (請將 <some_password_here> 替換成不重複的安全密碼):
CREATE USER looker IDENTIFIED BY '<some_password_here>';
步驟 3
建立暫時資料庫,並授予 Looker 其他資料庫和資料表的讀取權限。Looker 通常不會寫入 looker_tmp 資料庫,而是使用該資料庫執行 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'@'%';
步驟 4
清除權限:
FLUSH PRIVILEGES;
AWS 步驟
步驟 1
登入並前往 AWS 資訊主頁。在「Database」部分,選取「RDS」。

步驟 2
在 RDS 資訊主頁上,選取要指定為主要資料庫的資料庫執行個體。依序選取「執行個體操作」和「建立唯讀副本」。

步驟 3
在「Create Read Replica DB Instance」彈出式視窗中,設定唯讀副本資料庫,然後選取「Yes, Create Read Replica」。

步驟 4
等待唯讀副本資料庫建立期間,您可以設定資料庫參數群組,其中包含要套用至唯讀副本資料庫執行個體的引擎設定值。在側欄中選取「DB Parameter Groups」頁面,然後選取「Create DB Parameter Group」按鈕。

步驟 5
選取「DB Parameter Group Family」(資料庫參數群組系列) 和「DB Parameter Group Name」(資料庫參數群組名稱),然後輸入「DB Parameter Group Description」(資料庫參數群組說明)。然後選取「是,建立」。
步驟 6
選取含有唯讀副本資料庫參數群組的資料列上的放大鏡圖示,或選取該資料列,然後選取「Edit Parameters」(編輯參數)。
步驟 7
在「參數」下方的「篩選器」欄位中,搜尋「read_only」。將參數值變更為 0。然後選取「儲存變更」。
步驟 8
唯讀副本建立完成後,請從資料庫執行個體清單中選取該副本,然後依序選取「Instance Action」(執行個體動作) 按鈕和「Modify」(修改)。
步驟 9
在「Modify DB Instance」(修改資料庫執行個體) 彈出式視窗中,將資料庫執行個體參數群組變更為新的唯讀副本參數群組。接著勾選「Apply Immediately」方塊,然後依序選取「Continue」和「Modify DB Instance」。
步驟 10
使用 MySQL 用戶端,以 looker 身分連線至唯讀副本資料庫執行個體,並測試是否能存取資料。
建立 Looker 與資料庫的連線
在 Looker 的「Admin」(管理) 部分,選取「Connections」(連線),然後點選「Add Connection」(新增連線)。
填寫連線詳細資料。在這些設定中,有絕大部分都是多數資料庫方言的常用設定。詳情請參閱「將 Looker 連線至資料庫」說明文件頁面。
如要確認連線成功,請按一下「連線設定」頁面底部「狀態詳細資料」部分中的「測試連線」按鈕。
如果 Looker 顯示「可連線」,請按下「連線」建立連線。
資料庫連線就會新增至 Looker「連線」管理頁面的清單中。
支援的 JDBC 參數
如果是 MySQL 適用的 Amazon RDS,Looker 支援在連線的「Additional JDBC parameters」(其他 JDBC 參數) 欄位中,使用下列 JDBC 參數。如要瞭解這些參數,請參閱資料庫的說明文件。
allowMultiQueriesautocommitcharacterSetResultsclientCertificateKeyStorePasswordclientCertificateKeyStoreUrlconnectionAttributesconnectionCollationconnectionTimeZoneconnectTimeoutdefaultAuthenticationPlugindisableSslHostnameVerificationdisconnectOnExpiredPasswordsenabledSslCipherSuitesfailOverReadOnlyfallbackToSystemTrustStoreforceConnectionTimeZoneToSessioninteractiveClientlookerFailovermaxIdleTimemaxQuerySizeToLogoldModeNoPrecisionTimestamppasswordpasswordCharacterEncodingpermitMysqlSchemepinGlobalTxToPhysicalConnectionpreserveInstantsqueryInterceptorsrestrictedAuthrewriteBatchedStatementssocketTimeoutsslModetcpKeepAlivetrustCertificateKeyStorePasswordtrustCertificateKeyStoreUrluseCompressionusePipelineAuthuseruseServerPrepStmtsverifyServerCertificateyearIsDateType
功能支援
Looker 支援的功能,也必須由資料庫方言支援。
MySQL 支援下列功能 (自 Looker 26.22 起):
| 功能 | 是否支援? |
|---|---|
| Looker (Google Cloud Core) | |
| 對稱式匯總函式 | |
| 衍生資料表 | |
| 永久 SQL 衍生資料表 | |
| 永久原生衍生資料表 | |
| 穩定檢視畫面 | |
| 終止查詢 | |
| 以 SQL 為基礎的透視表 | |
| 時區 | |
| SSL | |
| 小計 | |
| JDBC 額外參數 | |
| 區分大小寫 | |
| 位置類型 | |
| 清單類型 | |
| 百分位數 | |
| 不重複值的百分位數 | |
| SQL Runner 顯示程序 | |
| SQL Runner Describe Table | |
| SQL Runner 顯示索引 | |
| SQL Runner 選取 10 | |
| SQL Runner 計數 | |
| SQL 說明 | |
| OAuth 2.0 憑證 | |
| 背景資訊註解 | |
| 連線集區 | |
| HLL Sketch | |
| 匯總感知 | |
| 增量 PDT | |
| 毫秒 | |
| 微秒 | |
| materialized view | |
| 期間比較指標 | |
| 不重複值的近似計數 | |
| 資料庫內分析模型 | |
| 自訂日曆 |