我有一个在 Windows 上运行的 PostgreSQL 8.4 数据库,但我丢失了超级用户用户名的名称,因此无法连接。
我已经配置pg_hba.conf为使用trust允许没有密码的连接,但我仍然需要知道登录的有效用户的名称。
我试过postgres、admin等,但我总是得到:
psql: FATAL: role "USERNAME" does not exist
Run Code Online (Sandbox Code Playgroud)
rvs*_*rvs 10
您可以尝试在单用户模式下运行 PostgreSQL。在我的系统(Linux)上,我已经能够使用以下命令获得超级用户 sql shell:sudo -u postgres postgres90 --single postgres -D /var/lib/postgresql/9.0/data/.
sudo -u postgres 这里是删除特权(postgres 拒绝在特权帐户下运行,其他参数应该很容易理解。
在单用户 shell 中,您应该能够创建新用户或 SELECT * FROM pg_user;
| 归档时间: |
|
| 查看次数: |
2945 次 |
| 最近记录: |