我有一個本地服務器,我所做的所有測試和工作。完成後,我只需上傳數據庫模式以及相關代碼即可。但是,當我對模式進行一些更改時會出現問題。我必須在我的實時服務器上手動輸入「alter table」查詢。Php Db同步
有沒有辦法獲得發生在數據庫模式中的增量更改,以便我可以應用新的更改?或者我必須手動跟蹤?
如果我使用mysqldump,那麼它會產生最終數據庫的模式(不包括alter table等)。
非常感謝。
我有一個本地服務器,我所做的所有測試和工作。完成後,我只需上傳數據庫模式以及相關代碼即可。但是,當我對模式進行一些更改時會出現問題。我必須在我的實時服務器上手動輸入「alter table」查詢。Php Db同步
有沒有辦法獲得發生在數據庫模式中的增量更改,以便我可以應用新的更改?或者我必須手動跟蹤?
如果我使用mysqldump,那麼它會產生最終數據庫的模式(不包括alter table等)。
非常感謝。
MySQL Workbench允許您導出ALTER腳本(文件 - >導出 - >正向工程SQL SQL ALTER腳本)。您將首先導入現有數據庫並對其應用修改。商業版本可以讓您反向設計一個實時數據庫,而社區則可以導入一個CREATE腳本(這將是現有結構的簡單轉儲)。或者,您可以使用DBDesigner 4反向設計一個實時數據庫,將所有內容全部保存到XML模型文件結束導入,但您將丟失默認字符集等內容...
我保留與新代碼一起傳送到生產服務器的delta sql腳本。我編寫了一切腳本,以便將應用程序從版本X更改爲版本Y是「自動」的。 Some people also have undo scripts萬一出現問題。
如何儲存您在開發過程中所做的更改,並將這些更改作爲一組來測試?
結賬Liquibase。這是Java,但它工作得很好。
您可以將此工具用於自動化過程^ http://hg.antonoff.info/idler/mmp/wiki/Home
僅要求PHP(但版本> = 5.3)