簡體   English   中英

如何在Google Cloud SQL中創建聯合表

[英]How do I create a Federated Table in Google Cloud SQL

我有一個Joomla(PHP)網站,上面有一個托管的MySQL數據庫。 我有一個包含一些統計數據的Google Cloud SQL實例。

我需要在兩個數據庫中查詢數據,並且希望該查詢在Google Cloud SQL實例上運行。

到目前為止,我的研究使我相信,執行此操作的最佳方法是在Google Cloud SQL數據庫中創建一個聯合表,但是在嘗試執行此操作時,我沒有得到預期的結果(我也沒有收到錯誤消息嗎? !)

Joomla MySQL表:

CREATE TABLE test_table (
  id INT(20) NOT NULL AUTO_INCREMENT,
  name VARCHAR(32) NOT NULL DEFAULT '',
  other INT(20) NOT NULL DEFAULT '0',
  PRIMARY KEY (id),
  INDEX name (name),
  INDEX other_key (other)
)
ENGINE=MyISAM
DEFAULT CHARSET=latin1;

Google Cloud SQL:

CREATE TABLE federated_table (
  id INT(20) NOT NULL AUTO_INCREMENT,
  name VARCHAR(32) NOT NULL DEFAULT '',
  other INT(20) NOT NULL DEFAULT '0',
  PRIMARY KEY (id),
  INDEX name (name),
  INDEX other_key (other)
)
ENGINE=FEDERATED
DEFAULT CHARSET=latin1
CONNECTION='mysql://*uid*:*pwd*@*joomla_server_ip*:3306/*database_name*/test_table';

哪里

*uid*, *pwd*, *joomla_server_ip* and *database_name* 

是所有有效值。

兩條語句都能正常執行,沒有錯誤,但是在將數據插入Joomla上的* test_table *之后,我無法在Google Cloud SQL的* federated_table *中看到任何數據。

我已經嘗試使用命令行工具(Windows)和SQuirrel SQL JDBC客戶端來創建聯合表。

因為我沒有看到任何錯誤,所以我不確定是Joomla數據庫端還是Google Cloud SQL數據庫端。 因此,任何幫助將不勝感激。 我假設問題出在兩個數據庫之間的連接上,但是您可以嘗試任何其他可能對我產生的理論。

編輯:

我現在正在使用其他客戶端進行連接(MySQL Workbench),這在嘗試執行相同操作時報告錯誤

1286 Unknown storage engine 'FEDERATED' 1266 Using storage engine InnoDB for table 'federated_table'

在問了這個問題后不久,Google將MySQL Wire Protocol添加到Google Cloud SQL。

http://googlecloudplatform.blogspot.co.uk/2013/10/google-cloud-sql-now-accessible-from-any-application-anywhere.html

現在可以以常規方式創建聯合表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM