本文介绍了出现致命错误:运行 pgAdmin4 时无法联系服务器.'NoneType' 对象没有属性 'value'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个全新安装的 Windows,我正在尝试安装 Postgres 和 pgAdmin4.我使用默认设置对所有内容(pgAdmin 4、postrgres 13 等)进行了全新安装.当我运行 pgAdmin 4 时,出现致命错误:无法联系服务器";带有以下消息:

I have a fresh install of windows where I am trying to install Postgres and pgAdmin4.I did a fresh install of everything (pgAdmin 4, postrgres 13, etc.) with default settings. When I run pgAdmin 4 I get a "fatal error: server could not be contacted" with the following message:

pgAdmin Runtime Environment
--------------------------------------------------------
Python Path: "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\python.exe"
Runtime Config File: "C:\Users\username\AppData\Roaming\pgadmin\runtime_config.json"
pgAdmin Config File: "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\config.py"
Webapp Path: "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgAdmin4.py"
pgAdmin Command: "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\python.exe -s C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgAdmin4.py"
Environment:
  - ALLUSERSPROFILE: C:\ProgramData
  - APPDATA: C:\Users\username\AppData\Roaming
  - CHROME_CRASHPAD_PIPE_NAME: \\.\pipe\crashpad_4296_YJZESWNMDVNGRRUO
  - CHROME_RESTART: NW.js|Whoa! NW.js has crashed. Relaunch now?|LEFT_TO_RIGHT
  - CommonProgramFiles: C:\Program Files\Common Files
  - CommonProgramFiles(x86): C:\Program Files (x86)\Common Files
  - CommonProgramW6432: C:\Program Files\Common Files
  - COMPUTERNAME: pcname
  - ComSpec: C:\Windows\system32\cmd.exe
  - configsetroot: C:\Windows\ConfigSetRoot
  - DriverData: C:\Windows\System32\Drivers\DriverData
  - HOMEDRIVE: C:
  - HOMEPATH: \Users\username
  - LOCALAPPDATA: C:\Users\username\AppData\Local
  - LOGONSERVER: \\pcname
  - NUMBER_OF_PROCESSORS: 8
  - NVM_HOME: C:\Users\username\AppData\Roaming\nvm
  - NVM_SYMLINK: C:\Program Files\nodejs
  - OneDrive: C:\Users\username\OneDrive
  - OS: Windows_NT
  - Path: C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Git\cmd;C:\Program Files\PostgreSQL\12\bin;C:\Users\username\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\username\AppData\Local\Microsoft\WindowsApps;C:\Users\username\AppData\Local\Programs\Microsoft VS Code\bin
  - PATHEXT: .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
  - PGADMIN_INT_KEY: 2e023387-9c82-4cdd-af2f-c82562c6e4fc
  - PGADMIN_INT_PORT: 50567
  - PGADMIN_SERVER_MODE: OFF
  - PROCESSOR_ARCHITECTURE: AMD64
  - PROCESSOR_IDENTIFIER: Intel64 Family 6 Model 140 Stepping 1, GenuineIntel
  - PROCESSOR_LEVEL: 6
  - PROCESSOR_REVISION: 8c01
  - ProgramData: C:\ProgramData
  - ProgramFiles: C:\Program Files
  - ProgramFiles(x86): C:\Program Files (x86)
  - ProgramW6432: C:\Program Files
  - PSModulePath: C:\Program Files\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules
  - PUBLIC: C:\Users\Public
  - SystemDrive: C:
  - SystemRoot: C:\Windows
  - TEMP: C:\Users\username\AppData\Local\Temp
  - TMP: C:\Users\username\AppData\Local\Temp
  - USERDOMAIN: pcname
  - USERDOMAIN_ROAMINGPROFILE: pcname
  - USERNAME: username
  - USERPROFILE: C:\Users\username
  - windir: C:\Windows
--------------------------------------------------------

Traceback (most recent call last):
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgAdmin4.py", line 98, in <module>
    app = create_app()
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgadmin\__init__.py", line 347, in create_app
    if not os.path.exists(SQLITE_PATH) or get_version() == -1:
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgadmin\setup\db_version.py", line 19, in get_version
    return version.value
AttributeError: 'NoneType' object has no attribute 'value'

注意:'username' 和 'pcname' 是我用来代替实际字符串的占位符,其中一些字符串最初是大写的.

验证服务postgresql-x64-13"正在运行.尽管尝试了以下操作,但我仍然收到此消息:

Verified service "postgresql-x64-13" was running. I continue to get this message despite trying the following:

  • 以管理员身份运行.
  • 正在删除C:\Users\username\AppData\Roaming\pgadmin.
  • C:\Program Files\PostgreSQL\13\bin 添加到 PATH 环境变量(系统和用户)
  • 重新启动服务.
  • 卸载/重新安装 Postgres 13.
  • 卸载/安装 Postgres 12.
  • 重新启动我的机器.
  • Running as administrator.
  • DeletingC:\Users\username\AppData\Roaming\pgadmin.
  • Adding C:\Program Files\PostgreSQL\13\bin to the PATH environment variable (system anduser)
  • Restarting the service.
  • Uninstalling/reinstalling Postgres 13.
  • Uninstalling/installing Postgres 12.
  • Restarting my machine.

产生不同结果的一件事是停止服务,删除 C:\Users\username\AppData\Roaming\pgadmin,重新启动服务,然后运行 ​​pg4admin 这导致致命错误".具有以下输出:

The one thing that yielded different results was stopping the service, deleting C:\Users\username\AppData\Roaming\pgadmin, restarting the service, then running pg4admin which resulted in a "fatal error" with the following output:

pgAdmin Runtime Environment
--------------------------------------------------------
Python Path: "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\python.exe"
Runtime Config File: "C:\Users\username\AppData\Roaming\pgadmin\runtime_config.json"
pgAdmin Config File: "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\config.py"
Webapp Path: "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgAdmin4.py"
pgAdmin Command: "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\python.exe -s C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgAdmin4.py"
Environment:
  - ALLUSERSPROFILE: C:\ProgramData
  - APPDATA: C:\Users\username\AppData\Roaming
  - CHROME_CRASHPAD_PIPE_NAME: \\.\pipe\crashpad_10312_CHCJAQAYYFQQIAGB
  - CHROME_RESTART: NW.js|Whoa! NW.js has crashed. Relaunch now?|LEFT_TO_RIGHT
  - CommonProgramFiles: C:\Program Files\Common Files
  - CommonProgramFiles(x86): C:\Program Files (x86)\Common Files
  - CommonProgramW6432: C:\Program Files\Common Files
  - COMPUTERNAME: pcname
  - ComSpec: C:\Windows\system32\cmd.exe
  - configsetroot: C:\Windows\ConfigSetRoot
  - DriverData: C:\Windows\System32\Drivers\DriverData
  - HOMEDRIVE: C:
  - HOMEPATH: \Users\username
  - LOCALAPPDATA: C:\Users\username\AppData\Local
  - LOGONSERVER: \\pcname
  - NUMBER_OF_PROCESSORS: 8
  - NVM_HOME: C:\Users\username\AppData\Roaming\nvm
  - NVM_SYMLINK: C:\Program Files\nodejs
  - OneDrive: C:\Users\username\OneDrive
  - OS: Windows_NT
  - Path: C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Git\cmd;C:\Program Files\PostgreSQL\13\bin;C:\Users\username\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\username\AppData\Local\Microsoft\WindowsApps;C:\Users\username\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\username\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Program Files\PostgreSQL\13\bin;
  - PATHEXT: .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
  - PGADMIN_INT_KEY: cb6cf8e1-ca8b-416b-985f-1fd1a945ff06
  - PGADMIN_INT_PORT: 50906
  - PGADMIN_SERVER_MODE: OFF
  - PROCESSOR_ARCHITECTURE: AMD64
  - PROCESSOR_IDENTIFIER: Intel64 Family 6 Model 140 Stepping 1, GenuineIntel
  - PROCESSOR_LEVEL: 6
  - PROCESSOR_REVISION: 8c01
  - ProgramData: C:\ProgramData
  - ProgramFiles: C:\Program Files
  - ProgramFiles(x86): C:\Program Files (x86)
  - ProgramW6432: C:\Program Files
  - PSModulePath: C:\Program Files\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules
  - PUBLIC: C:\Users\Public
  - SESSIONNAME: Console
  - SystemDrive: C:
  - SystemRoot: C:\Windows
  - TEMP: C:\Users\username\AppData\Local\Temp
  - TMP: C:\Users\username\AppData\Local\Temp
  - USERDOMAIN: pcname
  - USERDOMAIN_ROAMINGPROFILE: pcname
  - USERNAME: username
  - USERPROFILE: C:\Users\username
  - windir: C:\Windows
--------------------------------------------------------

NOTE: Configuring authentication for DESKTOP mode.

Traceback (most recent call last):
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgAdmin4.py", line 91, in <module>
    exec(open(file_quote(setup_py), 'r').read())
  File "<string>", line 506, in <module>
  File "<string>", line 378, in setup_db
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgadmin\__init__.py", line 351, in create_app
    db_upgrade(app)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgadmin\setup\db_upgrade.py", line 25, in db_upgrade
    flask_migrate.upgrade(migration_folder)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\flask_migrate\__init__.py", line 96, in wrapped
    f(*args, **kwargs)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\flask_migrate\__init__.py", line 271, in upgrade
    command.upgrade(config, revision, sql=sql, tag=tag)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\alembic\command.py", line 294, in upgrade
    script.run_env()
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\alembic\script\base.py", line 490, in run_env
    util.load_python_file(self.dir, "env.py")
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\alembic\util\pyfiles.py", line 97, in load_python_file
    module = load_module_py(module_id, path)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\alembic\util\compat.py", line 182, in load_module_py
    spec.loader.exec_module(module)
  File "<frozen importlib._bootstrap_external>", line 783, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgadmin\setup\..\..\migrations\env.py", line 93, in <module>
    run_migrations_online()
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\pgadmin\setup\..\..\migrations\env.py", line 86, in run_migrations_online
    context.run_migrations()
  File "<string>", line 8, in run_migrations
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\alembic\runtime\environment.py", line 813, in run_migrations
    self.get_context().run_migrations(**kw)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\alembic\runtime\migration.py", line 561, in run_migrations
    step.migration_fn(**kw)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\web\migrations\versions\fdc58d9bd449_.py", line 122, in upgrade
    Security(current_app, user_datastore, register_blueprint=False)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\flask_security\core.py", line 1062, in __init__
    self._state = self.init_app(
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\flask_security\core.py", line 1102, in init_app
    self._state = state = _get_state(app, datastore, **kwargs)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\flask_security\core.py", line 608, in _get_state
    remember_token_serializer=_get_serializer(app, "remember"),
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\flask_security\core.py", line 593, in _get_serializer
    return URLSafeTimedSerializer(secret_key=secret_key, salt=salt)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\itsdangerous\serializer.py", line 104, in __init__
    self.secret_keys: _t.List[bytes] = _make_keys_list(secret_key)
  File "C:\Program Files\PostgreSQL\13\pgAdmin 4\python\lib\site-packages\itsdangerous\signer.py", line 64, in _make_keys_list
    return [want_bytes(s) for s in secret_key]
TypeError: 'NoneType' object is not iterable

我最近在另一台机器上安装了它,没有任何问题.新构建会出现问题似乎很奇怪.几乎让我觉得我缺少旧版本包含的东西(python?),尽管事实并非如此.有很多关于此的帖子,我已经尝试了其中建议的所有内容,但都没有解决.

I recently installed this on a different machine without any issues. Seems odd that a fresh build would have the issues. Almost makes me think I am lacking something the older build contains (python?), although this shouldn't be the case. There are lots of posts about this and I have tried everything suggested in them without resolution.

推荐答案

正如 Delsx 在评论中指出的那样,可以安装独立的 pgAdmin 而不会出现 pgadmin.org/download.看来这是一个普遍存在的错误,已在 pgAdmin 错误列表 中报告,此处 和 这里

As Delsx pointed out in the comments, the standalone pgAdmin can be installed without the same issues from pgadmin.org/download. It appears this is a widespread bug that has been reported on the pgAdmin bug list, here and here

这篇关于出现致命错误:运行 pgAdmin4 时无法联系服务器.'NoneType' 对象没有属性 'value'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-26 03:40