为什么我的表在 RethinkDB 中不可用?
Why are my tables unavailable in RethinkDB?
我的 VPS 上有一个 RDB (rethinkdb 2.1.1~0trusty) 实例,没有集群或分片,一个数据库包含 6 个 table。 Web 管理界面显示 7 个问题:1 个是过时的索引,6 个是不可用的 tables。有时会发生由于 RethinkDB 服务器更新而必须重建 table 索引的情况,之前发生过,我可以使用 rethinkdb index-rebuild
命令重建它们。
但是这次重建索引不起作用,因为 RDB 一直告诉我我的 table 无法访问,尽管数据目录似乎完好无损。我想知道如何解决这些问题。
到目前为止我尝试过的:
rethinkdb index-rebuild
命令告诉我我的 table 无法访问
rethinkdb dump
进行转储,手动重新创建数据库和索引,但还告诉我 table 无法访问
- 重启rethinkdb/重启我的VPS - 没用
- 仔细检查我的实例配置 - 目录指向实际数据目录等,所以这里没什么特别的
- 仔细检查数据目录的权限 - 也可以
仍然有效的内容:
- reading/writing table 使用数据资源管理器
- read/write 通过我的网络应用访问
总而言之,我的 RDB 实例似乎可以完全运行,但我无法重建索引或创建转储,并且管理界面显示一些我不知道如何解决的问题。
我可以按照@janih 在对原始 post 的评论中的建议通过执行以下操作降级来解决所有问题:
# apt-get install rethinkdb=2.1.0+1~0trusty
# rethinkdb index-rebuild -a MYACCESSKEY -r my_database
# service rethinkdb restart
还有田田!管理员 UI 显示的所有 7 个问题都消失了!
编辑: 最后升级到 2.1.2 解决了问题
我的 VPS 上有一个 RDB (rethinkdb 2.1.1~0trusty) 实例,没有集群或分片,一个数据库包含 6 个 table。 Web 管理界面显示 7 个问题:1 个是过时的索引,6 个是不可用的 tables。有时会发生由于 RethinkDB 服务器更新而必须重建 table 索引的情况,之前发生过,我可以使用 rethinkdb index-rebuild
命令重建它们。
但是这次重建索引不起作用,因为 RDB 一直告诉我我的 table 无法访问,尽管数据目录似乎完好无损。我想知道如何解决这些问题。
到目前为止我尝试过的:
rethinkdb index-rebuild
命令告诉我我的 table 无法访问rethinkdb dump
进行转储,手动重新创建数据库和索引,但还告诉我 table 无法访问- 重启rethinkdb/重启我的VPS - 没用
- 仔细检查我的实例配置 - 目录指向实际数据目录等,所以这里没什么特别的
- 仔细检查数据目录的权限 - 也可以
仍然有效的内容:
- reading/writing table 使用数据资源管理器
- read/write 通过我的网络应用访问
总而言之,我的 RDB 实例似乎可以完全运行,但我无法重建索引或创建转储,并且管理界面显示一些我不知道如何解决的问题。
我可以按照@janih 在对原始 post 的评论中的建议通过执行以下操作降级来解决所有问题:
# apt-get install rethinkdb=2.1.0+1~0trusty
# rethinkdb index-rebuild -a MYACCESSKEY -r my_database
# service rethinkdb restart
还有田田!管理员 UI 显示的所有 7 个问题都消失了!
编辑: 最后升级到 2.1.2 解决了问题