繁体   English   中英

下载Google App Engine数据库

[英]Downloading Google App Engine Database

在Google App Engine数据存储区中创建表(实体)后,我已经创建了Web应用程序并将其部署在Google App Engine中。 我怀疑是否可以下载实体/数据库?

要启用remote_api ,请将其添加到您的web.xml

<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>

此线程中的详细信息: http : //groups.google.com/group/google-appengine/browse_thread/thread/1bb013cbdd30750b

然后,如谢伊所言,使用批量加载器

(添加为答案而不是注释,只是因为XML在注释中的格式不正确。)

我有一个简单的要求,即从基于GAE Java的App中转储实体并将其还原到本地数据存储区。 我最终可以按照以下步骤进行操作

  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. 下载适用于Python的Google App Engine SDK并解压缩

  3. 使用bulkloader.py从GAE转储数据存储

    bulkloader.py --dump --application = s〜appid --url = http://appid.appspot.com/remote_api --filename = xyz.dump

    --application是作为s〜appid给出的,即tilda appid是使用HR数据存储区的app。 对于主/从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恢复数据,但无法在开发控制台-数据存储区查看器中访问实体。我不知道为什么)

    转储可以还原到相同的appid甚至不同的appid

是的,使用BulkLoader

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM