2010-09-13 82 views
1

在Google App Engine數據存儲中創建表(實體)後,我創建了Web應用程序並將其部署到Google App Engine中。我懷疑是否可以下載實體/數據庫?在這個線程正在下載Google App Engine數據庫

<servlet> 
    <servlet-name>remote-api</servlet-name> 
    <servlet-class>com.google.apphosting.utils.remoteapi.RemoteApiServlet</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>remote-api</servlet-name> 
    <url-pattern>/remote_api</url-pattern> 
</servlet-mapping> 

細節:

回答

1

是,使用BulkLoader

+0

我需要一些更多的例子,如何從谷歌App Engine數據存儲 – user441392 2010-09-13 10:31:49

+0

下載數據,我用這個:'的python2.5 appcfg.py download_data -A APP-ID --url的http:// APP- ID.appspot.com/remote_api --filename = datastore - $(date +%Y%m%d-%H%M).data' – sahid 2010-09-13 11:23:37

+0

在那個bulkloaderlink中,他們也解釋了使用python。但我正在使用java,因此我無法遵循該示例。我想了解如何在web應用程序項目中使用java下載數據 – user441392 2010-09-13 11:44:19

3

我做了一個簡單的要求,從GAE Java轉儲實體基於應用程序,並將其恢復爲本地數據存儲。我終於可以用下面的步驟去做

  1. 添加RemoteApiServlet到web.xml和部署應用程序

    <servlet> 
        <servlet-name>RemoteApi</servlet-name> 
        <servlet-class>com.google.apphosting.utils.remoteapi.RemoteApiServlet</servlet-class> 
    </servlet> 
    <servlet-mapping> 
        <servlet-name>RemoteApi</servlet-name> 
        <url-pattern>/remote_api</url-pattern> 
    </servlet-mapping> 
    
  2. 下載谷歌的App Engine SDK Python和解壓

  3. 使用bulkloader.py從GAE轉儲數據存儲區

    bulkloader.py --dump --application = S〜APPID --url = HTTP://appid.appspot.com/remote_api --filename = xyz.dump

    --application給出因爲應用程序正在使用HR數據存儲。對於Master/Slave datasotre,簡單的appid將會執行。

    bulkload.py將提示輸入應用程序的登錄憑據。在身份驗證時,它會將實體轉儲到指定的文件。

  4. 要恢復的使用下面的命令

    bulkloader.py --restore --application = APPID --url = HTTP://127.0.0.1:8888/remote_api的--filename = xyz.dump

    對於本地憑據使用電子郵件管理員和空白密碼。即使對於HRD本地數據存儲,也可以使用普通appid(s〜appid恢復數據,但無法在Development Console - Datastore查看器中訪問實體)

    可以將轉儲恢復到相同的appid甚至是不同的appid

相關問題