Dify忘记管理员密码,重置的问题

今天本地win10电脑,使用源码启动dify,忘记了管理员账号和密码,于是网上查找解决办法。

1.有的网上资料说是去数据库删除用户表,于是进入数据库:

复制代码
docker exec -it docker-db-1 psql -U postgres -d dify

找到postgres数据中的表accounts,delete清空表里面的账号数据。

然后继续进入redis,

复制代码
docker exec -it docker-redis-1 sh

# docker exec -it docker-redis-1 sh
/data # redis-cli
127.0.0.1:6379> keys *
1) "refresh_token:7d177d5971609013a2c8a5634ce49de1d488332bb5961d8d69ce1a371a3abdeac65d9010df7a6f1e7c73508cbd6733e0c27e2235999ca593192919678ab688b4"
2) "reset_password:account:78837d37-83d0-4e21-88c0-25de52df8ee0"
3) "account_refresh_token:78837d37-83d0-4e21-88c0-25de52df8ee0"
4) "login_error_rate_limit:you-guess@qq.com"

# 查看过期时间,大概还剩23个多小时。。
127.0.0.1:6379> ttl login_error_rate_limit:you-guess@qq.com
(integer) 85202

# 删除这个Key
127.0.0.1:6379> del login_error_rate_limit:you-guess@qq.com
(integer) 1

我干脆直接清空了里面所有的key。发现在dify的install页面还是无法正常重置管理员账户信息(进入页面后它会自己重定向到登录页)。问题没解决。

2.调试前端代码,发现接口返回账号setup信息,于是去数据库清空dify_setups表数据内容。

然后页面会在/install和/signin页面中不断登录跳转来回。问题没解决。

3.于是使出终极大招,删除volumes下数据库相关的文件:

然后按照官网的指南,重新执行数据库的初始化。执行:

复制代码
docker compose -f docker-compose.middleware.yaml up -d

poetry run flask db upgrade

poetry run flask run --host 0.0.0.0 --port=5001 --debug

最后终于可以正常使用了。这里其实相当于重新部署项目了,旧数据已经被我删了,幸亏我这是开发环境,如果是生产环境,我建议还是进入数据库,修改密码之类的吧。否则数据肯定会丢失了。

如果有其他方法,欢迎一起留言讨论。

相关推荐
_Meilinger_15 小时前
碎片笔记|生成模型原理解读:AutoEncoder、GAN 与扩散模型图像生成机制
人工智能·生成对抗网络·gan·扩散模型·图像生成·diffusion model
Listennnn15 小时前
BEV query 式图片点云视觉特征融合
人工智能
DS-RAG15 小时前
万方智能体投票火热进行中~
人工智能
Miki Makimura16 小时前
基于网络io的多线程TCP服务器
网络·c++·学习
semantist@语校16 小时前
语校网500所里程碑:日本语言学校数据库的标准化与可追溯机制
大数据·数据库·人工智能·百度·语言模型·oracle·github
丰锋ff16 小时前
2014 年真题配套词汇单词笔记(考研真相)
学习·考研
RaLi和夕16 小时前
嵌入式学习笔记4.STM32中断系统及外部中断EXTI
笔记·stm32·单片机·学习
key0616 小时前
《数据出境安全评估办法》企业应对策略
网络·人工智能·安全
key0616 小时前
数据安全能力成熟度模型 (DSMM) 核心要点
大数据·人工智能
2401_8315017316 小时前
Python学习之day01学习(变量定义和数据类型使用)
开发语言·python·学习