Apache Superset 1.4.2 已经出来有一段时间了,我的 Apache Superset Portable 还是 1.3.2 版本(我打算等1.5版本正式发布才更新便携版本,因为DuckDB的支持将在该版本正式发布),尝试升级下,
pip install -U apache-superset
superset db upgrade
superset db init
然后报错了,
ValueError: Invalid decryption key
不合法的解密键值,这是什么鬼?网上搜索很久,才找到了原因,
17984[1]: Default Flask SECRET_KEY has changed for security reasons. You should always override with your own secret. Set
PREVIOUS_SECRET_KEY
(ex: PREVIOUS_SECRET_KEY = “21thisismyscretkey12eyyh”) with your previous key and usesuperset re-encrypt-secrets
to rotate you current secrets
因为安全原因, Flask 修改了 SECRET_KEY
默认值, 这要求我们重置我们的密码,解决报错的办法是,
-
把以前的
SECRET_KEY
赋值给PREVIOUS_SECRET_KEY
-
执行命令
superset re-encrypt-secrets
重置当前的密码。
superset re-encrypt-secrets -a '21thisismyscretkey12eyyh'
superset db upgrade
superset db init
如果还有问题,也许你需要重置 dbs 的 password 和 encrypted_extra 为 null
update dbs set password = null, encrypted_extra = null where id=1
上面是官方给的解决办法, 下面是网上给的另外一个解决办法,
-
修改 superset_config.py
里的SECRET_KEY
-
重置 dbs 的 password 和 encrypted_extra 为 null update dbs set password = null, encrypted_extra = null where id=1
-
superset db upgrade
-
superset init
-
superset run
-
登录 Superset, 访问 Data > Databases 修改密码(如果是 SQLite, 则这步可以略过)
我最开始就是使用的方法二,后来发现了方法一后,经测试一样 OK。
参考资料
17984: https://github.com/apache/superset/pull/17984
原文始发于微信公众号(alitrack):Apache Superset 如何升级到 1.4
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/62794.html