我有一個表test1,它存儲在主機server_A上的MySQL數據庫dbtest中。我想在主機server_B上的數據庫MySQL test2上創建一個視圖V.我想將表test2中的數據讀入視圖V.並且...我不允許使用複製。 MySQL甚至可以從另一個MySQL服務器讀取數據嗎?可能嗎?如何創建從其他服務器和數據庫讀取其數據的MySQL視圖?
0
A
回答
0
實現此行爲的一種可能方式是使用存儲引擎的FEDERATED表(與MyISAM,InnoDB相反)。
該存儲本質上是一個代理。假設您在主機'remote_host'上有一個'remote_table'數據庫'remote_db'。如果你想使用該表,如果它是在數據庫主機「local_host」 local_db「本地表,你會建立一個新的表「local_table」上的「local_db」 FEDERATED storange引擎,並將其指向'remote_table'on'remote_host.remote_db'。它將充當虛擬代理表,通過MySQL客戶端API將語句轉發到遠程表並返回結果。
設置和使用FEDERATED表中的可笑容易。
在remote_db上,除了可能爲該表創建專用用戶外,出於安全原因以及有限權限,您無需執行任何特殊操作。
在local_db,您可以創建鏡像remote_table一個新表:
CREATE TABLE federated_table (
[column definitions go here]
)
ENGINE=FEDERATED
CONNECTION='mysql://[email protected]_host:9306/remote_db/remote_table';
那些最後兩行做所有的魔法 - 他們做出此表充當遠程表的代理,在指定的CONNECTION
一行。
有一些疑難雜症的,雖然 - 沒有交易,沒有查詢緩存(local_host服務器上),在龐大的批量插入性能下降,...
參考文獻: The MySQL documentation
相關問題
- 1. 我可以在其他數據庫服務器上創建數據庫服務器視圖
- 2. 從其他服務器上的數據庫更新數據庫
- 3. 在創建過程中從其他服務器獲取數據
- 4. 如何將數據從wordpress發佈到其他服務器(mysql)數據庫
- 5. 如何創建一個從其他數據庫獲取信息的視圖?
- 6. 連接其他服務器數據庫
- 7. 從其他服務器提取mysql數據
- 8. 從其他數據庫獲取數據
- 9. 如何將數據庫從Firebase移動到其他服務器?
- 10. 如何讀取從其他服務器上的Ajax發送的數據
- 11. 從其他SQLite數據庫創建SQLite數據庫C#
- 12. 其他服務器上的數據庫(MySQL)
- 13. 從其他postgres數據庫讀取數據
- 14. 如何檢索其他服務器上的數據庫
- 15. 如何從dotnetnuke中的其他數據庫獲取數據?
- 16. 的cronjob從一個數據庫讀取和寫入到其他
- 17. MySQL在UPDATE從其他數據庫
- 18. 從其他活動中讀取數據
- 19. 從其他表格讀取數據
- 20. SQL服務器數據透視表列從其他表
- 21. mysql從其他表中獲取數據
- 22. 如何爲Advantage數據庫服務器(ADS)創建數據庫?
- 23. 如何從一個數據庫獲取數據到其他數據庫?
- 24. 創建從其他數據集
- 25. 從位於服務器的數據庫讀取數據android
- 26. 從意圖傳遞數據到其他使用Python服務器
- 27. 創建只讀數據庫/ Web服務?
- 28. 從一個數據庫讀取數據並將其存儲在其他數據庫中
- 29. 如何創建模型從MS Access數據庫讀取數據?
- 30. 從服務器MySql數據庫更新本地服務器MySql數據庫
更新了我的答案,包括一些更多的信息 – ilias
我有兩個表,他們已經創建了一個是test1和其他是test2在mysql數據庫test2表是在另一臺服務器上創建的,我希望在我的服務器上創建視圖或讀取數據,並且這兩個表不是任何關係我的目標以避免重複..你可以幫助,如果你有任何想法ilias .. –
有什麼不清楚我的答案? (建設性的批評總是受歡迎的)。無論如何,在與您的其他服務器上指向「test2」的聯合表格「test1」相同的服務器上創建一個表「test2」。通過這種方式,它將*使用test1,就像它在服務器上一樣,但它將*不會保存任何數據*。它會將所有查詢代理到其他服務器並返回結果,就像它是本地表一樣。避免任何重複。這個聯邦表也可以在視圖內使用。請告訴我你不明白的事情,以便我可以幫助你,但請仔細閱讀,首先... – ilias