有沒有簡單的方法在PostgreSQL 8.1中創建數據庫或模式的副本?PostgreSQL如何創建數據庫或模式的副本?
我正在測試一些軟件,它對數據庫中的特定模式做了很多更新,我想製作一份它的副本,以便我可以對原始文件進行一些比較。
有沒有簡單的方法在PostgreSQL 8.1中創建數據庫或模式的副本?PostgreSQL如何創建數據庫或模式的副本?
我正在測試一些軟件,它對數據庫中的特定模式做了很多更新,我想製作一份它的副本,以便我可以對原始文件進行一些比較。
如果它位於同一臺服務器上,則只需使用帶有TEMPLATE參數的CREATE DATABASE命令。例如:
CREATE DATABASE newdb WITH TEMPLATE olddb;
pg_dump
與--schema-only
選項。
將「7.4」替換爲「當前」,並且您有鏈接到最新版本。 – bortzmeyer 2009-05-03 18:36:28
我剛剛做了這個 – artm 2013-03-05 09:49:35
這裏是鏈接到一些examples的備份和恢復。您可以使用備份來恢復到不同的服務器或任何其他服務器
如果必須將架構從本地數據庫複製到遠程數據庫,則可以使用以下兩個選項之一。
選項A
複製從本地數據庫到轉儲文件的架構。
pg_dump -U postgres -Cs database > dump_file
將轉儲文件從本地服務器複製到遠程服務器。
scp [email protected]:dump_file [email protected]:dump_file
連接到遠程服務器。
ssh [email protected]
將模式從轉儲文件複製到遠程數據庫。
psql -U postgres database < dump_file
選項B
複製直接從本地數據庫與遠程數據庫中的模式,而無需使用中間文件。
pg_dump -h localhost -U postgres -Cs database | psql -h remotehost -U postgres database
,如果你想了解更多選項複製使用pg_dump
數據庫這blog post可能被證明對你有幫助。
這也複製數據到新的數據庫...任何相關的方法來做到沒有數據? – 2011-11-14 08:16:03