我一直在用Superset测试东西,我想我破坏了我的超级数据库。当我试图访问任何图表时,我会得到以下错误:

我找到了解决这个问题的方法,方法是用ag搜索单个迁移删除dbs.perm表的银搜索器,并使用以下命令
superset db downgrade <migration-id>
在那之前的迁徙。
对于我来说,还不太清楚我将采取哪些步骤来安全地完全重置db。
我有手册,开发安装,因为我正在努力定制代码。假设我在数据库中没有太重要的东西,所以我不害怕松开表、用户、perms等等。
我发现我在~/.超集中有一个superset.db,但是我认为删除它是不够的,对吗?
如何重新设置Superset的db以便使数据库干净并重新开始?我能做到这一点,而不失去我的超级集安装,或我需要重新开始完全?无论如何,你能引导我通过它吗?
发布于 2020-08-13 14:41:47
你不需要重新安装所有东西。只需删除~/..superset/Superset.db文件,并在删除该文件之前对其进行备份,以防您想要还原它。然后运行以下命令。这些命令将创建另一个数据库文件。
初始化数据库
superset db upgrade
创建一个管理用户(在设置密码之前,将提示您设置用户名、名和姓)
$ export FLASK_APP=superset
$ superset fab create-admin加载一些数据来处理
superset load_examples
创建默认角色和权限
superset init
发布于 2020-08-12 15:04:42
删除superset.db中的~/.superset应该足够了,这是重新开始的更干净的方式。但是请注意,SQLLite不是推荐的元数据DB引擎,它的支持应该在将来完全删除。
我还建议使用用于在Apache Superset上测试/开发的docker-组合。
https://stackoverflow.com/questions/63378493
复制相似问题