我特灵添加共享_preload_libraries ='$libdir/passwordcheck'在postgresql. conf.版本是9.2.13,在这个版本中没有passwordcheck模块.所以我把passwordcheck.so从12版本到9.2.13版本在$libdir中,但当我尝试重新启动服务器,下面有这样的消息.无法加载库“/usr/lib64/pgsql/passwordcheck.so”:未定义的符号:普通密码验证
我应该如何解决它?当我使用“ldd passwordcheck.so”检查时,它是成功的
另外,我想编译againg后,我从新的版本得到扩展.但postgresql安装在服务器,它不是由源安装.它的installd通过使用命令“sudo apt-get install postgresql”所以我不能重新编译
$ ./pg_ctl -D /home/postgres/pgsql/data start
server starting
$ FATAL: could not load library "/home/postgres/pgsq/lib/passwordcheck.so": /home/postgres/pgsq/lib/passwordcheck.so: undefined symbol: plain_crypt_verify
字符串
1条答案
按热度按时间vlju58qv1#
你不能使用一个与它的主要版本不同的PostgreSQL库。你必须为PostgreSQL 9.2构建这个库。
但我的建议是不要碰这个软件,除非更新到9.2.24并升级到支持的PostgreSQL版本。
请注意,passwordcheck扩展不能用于强制执行密码复杂性规则,因为客户端可以在将密码发送到服务器之前对其进行散列。