2017-03-08 43 views

回答

0

我不確定你想要完成什麼。

MySQL是一個數據庫服務器;它擁有數據並可用於許多客戶端的併發訪問。

phpMyAdmin是一種特殊類型的應用程序,可以訪問MySQL服務器;尤其是通過添加用戶,修改表結構等,管理員可以更輕鬆地管理他們的數據庫安裝。對於最終用戶與數據庫進行交互,您需要一個自定義應用程序或網站; phpMyAdmin不是爲最終用戶交互而設計的。

Github是一個軟件託管平臺,允許軟件開發人員主持下載和開發(包括源代碼,問題跟蹤器和其他工具)。

由於phpMyAdmin和Github都不是「擁有」數據庫的東西,因此詢問如何從一個數據庫導入到另一個數據庫沒有多大意義。你試圖完成什麼?

編輯

爲了確保所有參與方都使用相同的數據庫模式,你有兩個選擇:要麼你的結構成爲他們必須消除他們的數據庫,並在每次導入(主版簡單但破壞性),或者您可以提供升級路徑,以便導入基本版本,並且在更改結構(更復雜但允許它們保留其數據)時沿途提供增量升級。要做第一個(破壞性的)選擇,你只需要導出你的表結構(你可以用phpMyAdmin的「Export」選項卡,選擇Structure按鈕)。然後將該.sql文件上傳到Github,您的貢獻者可以下載它並導入到他們的MySQL實例中。

對於第二個,有一些工具可以爲您生成差異,我不知道它們中的任何一個都足夠特別(除了phpMyAdmin)推薦任何。但是,您在尋找的是一種工具,可以讓您遷移數據庫模式或爲數據庫結構提供版本控制。這兩者中的任何一個都會產生一些結果,並且程序會在您進行更改時生成增量SQL文件(我想這並不是那種情況)。因此,您將發佈原始結構,然後進行更改(可能會爲「上次修改」添加時間戳列)。您將運行您的工具,該工具將創建一個添加該時間戳的文件。您的貢獻者可以運行該SQL文件來修改其表結構。然後一段時間後,您可能希望添加另一個表格,並重復該過程。

您可以輕鬆地用SQL語句手動執行該操作;你不需要依靠一個工具來產生差異。

我個人在這種情況下做的是在我的開發服務器上進行更改,使用phpMyAdmin預覽SQL功能查看將要運行的確切命令,然後將其複製並粘貼到。我通過手工導入到生產服務器的sql文件。這樣,我就沒有直接對生產服務器進行修改;它都是版本控制和可重複的。有些工具可以讓我更容易,但我很少這樣做,我只是手工做。

+0

首先,非常感謝你 我確實想要做的是我希望我的所有貢獻者在github上擁有相同的數據庫體系結構(而不​​是necesserly thecontent)......因爲我們需要這個來測試與數據庫交互的代碼,我創建使用phpmyadmin ...我希望現在清楚...原諒我的英語 –

+0

我已經編輯了我的迴應與一些想法。順便說一下,你的英語看起來不錯,但我認爲這個問題本身並不是很清楚,因爲涉及到所有的技術。 –

+0

非常感謝uu ... –