不支持在带有PostgreSQL 10的Ubuntu 16.04上安装phpPgAdmin 5.1



在我的 ubuntu 16.04 中基于 https://www.howtoforge.com/tutorial/ubuntu-postgresql-installation/安装

登录 http://localhost/phppgadmin/PostgreSQL,浏览器显示不支持 PostgreSQL 版本。请升级到版本或更高版本。

有什么解决方案吗?

实际上您仍然可以手动修改此文件:

类/数据库/连接.php

// Detect version and choose appropriate database driver
switch (substr($version,0,3)) {
    case '9.5': return 'Postgres'; break;
    case '9.4': return 'Postgres94'; break;
    case '9.3': return 'Postgres93'; break;
    case '9.2': return 'Postgres92'; break;
    case '9.1': return 'Postgres91'; break;
    case '9.0': return 'Postgres90'; break;
    case '8.4': return 'Postgres84'; break;
    case '8.3': return 'Postgres83'; break;
    case '8.2': return 'Postgres82'; break;
    case '8.1': return 'Postgres81'; break;
    case '8.0':
    case '7.5': return 'Postgres80'; break;
    case '7.4': return 'Postgres74'; break;
}
switch (substr($version,0,4)) {
    case '10.1': return 'Postgres'; break;
}

没有经过全面测试,但所有主要功能都工作正常。

或者创建您自己的 https://github.com/phppgadmin/phppgadmin 分支并创建/修复几个文件以实现完全支持。

编辑3:phpPgAdmin再次处于积极开发状态!如果您下载最新版本,它支持高达 v11.x 的 PostgreSQL

http://phppgadmin.sourceforge.net/doku.php?id=downloadhttps://github.com/phppgadmin/phppgadmin


phpPgAdmin已经多年没有被积极开发。对于PostgreSQL来说,它仍然是一个很好的接口,但不幸的是,它们只正式支持9.2。 我注意到最新版本仍然可以运行到 9.6,至少在过去的 6 个月里它在生产环境中是这样,在此之前,它多年来一直与我所拥有的任何东西(9.4/9.5?

我建议改为安装 9.6,然后从那里开始。

编辑:如果你热衷于使用v10,那么你仍然可以使用pgAdmin 4作为界面,尽管这不是基于Web的。

参考资料:phpPgAdmin官方网站

编辑2:查看DToch的答案以获取良好的解决方法

为了更清楚,完整路径是/usr/share/phppgadmin/classes/database/Connection.php

您也可以简单地添加

default: return 'Postgres'; break; 

在开关语句的末尾。

还需要登录的用户名应该是"postgres"。没有很好的记录。

如果您使用的是docker(使用我的phppgadmin分支,因为它修复了与较新posrgres的兼容性):

FROM php:8-fpm-alpine
RUN apk add --no-cache --virtual 
     .build-deps git autoconf g++ make postgresql-dev 
  && docker-php-ext-install pgsql 
  && docker-php-ext-enable opcache 
  && apk add libpq ca-certificates curl apache2-proxy 
  && rm -rf /var/www/localhost/.git/ /var/www/localhost 
  && git clone https://github.com/idontusenumbers/phppgadmin.git /var/www/localhost/htdocs 
  && rm -rf /var/www/localhost/.git/ 
  && apk del .build-deps  
  && rm -rf /tmp/* 
  && rm -rf /var/cache/apk/* 
  && rm /etc/init.d/apache2

RUN echo "ProxyPassMatch ^/(.*.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www/localhost/htdocs/$1" >> /etc/apache2/httpd.conf
RUN echo "DirectoryIndex index.php" >> /etc/apache2/httpd.conf
phppgadmin 文件夹中的

编辑文件类/数据库/连接.php

在此行后添加:案例"7.4":返回"Postgres74";破;

键入或复制/粘贴此文本:默认值:返回"Postgres";破;

瞧!

在目录类/数据库中调整文件连接.phpswitch (substr($version,0,3)) {

        case '9.2': return 'Postgres'; break;
        case '9.1': return 'Postgres91'; break;
        case '9.0': return 'Postgres90'; break;
        case '8.4': return 'Postgres84'; break;
        case '8.3': return 'Postgres83'; break;
        case '8.2': return 'Postgres82'; break;
        case '8.1': return 'Postgres81'; break;
        case '8.0':
        case '7.5': return 'Postgres80'; break;
        case '7.4': return 'Postgres74'; break;
        default: return 'Postgres'; break;
    }

它也适用于版本 10 没有问题。

这也解决了出现以下错误消息时的问题:未定义的变量:不支持PostgreSQL的postgresqlMinVer版本。请升级到版本或更高版本。

相关内容

  • 没有找到相关文章

最新更新