下载Google App Engine数据库

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

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

  remote-api com.google.apphosting.utils.remoteapi.RemoteApiServlet   remote-api /remote_api  

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

然后,正如shay所提到的,使用批量加载器 。

(仅作为答案而不是评论添加,因为XML不会在评论中很好地格式化。)

我有一个简单的要求从基于GAE Java的应用程序转储实体并将它们还原到本地数据存储区。 我终于可以通过以下步骤来完成它了

  1. 将RemoteApiServlet添加到web.xml并部署应用程序

      RemoteApi com.google.apphosting.utils.remoteapi.RemoteApiServlet   RemoteApi /remote_api  
  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

    – 应用程序以s~appid给出,即tilda appid,因为app正在使用HR数据存储区。 对于Master / Slave datasotre,普通的appid会做。

    bulkload.py将提示输入app的登录凭据。 在身份validation时,它会将实体转储到指定的文件。

  4. 要恢复使用以下命令

    bulkloader.py –restore –application = appid –url = http://127.0.0.1:8888 / remote_api –filename = xyz.dump

    对于本地凭据,请使用电子邮件admin和空密码。 即使对于HRD本地数据存储区,也使用普通的appid(s~appid恢复数据,但在开发控制台中无法访问实体 – 数据存储区查看器。我不知道为什么)

    转储可以恢复到相同的appid甚至是不同的appid

是的,使用BulkLoader