Login Error
error while loading shared libraries: libpq.so.5: cannot open shared object file: No such file or directory
Cause explanation: Some special software or plugins only recognize .bashrc but not .bash_profile, so after adding it, log out of the terminal and log in again.
Solution: In the .bashrc environment variable, is the following environment variable LD_LIBRARY_PATH set.
export LD_LIBRARY_PATH=$ADB_HOME/lib:$LD_LIBRARY_PATH
Authentication failed (username/password)
Cause Explanation: AntDB mgr manages each node remotely through ssh, so you need to configure ssh mutual trust or add password option. Solution: Is mutual trust configured between each host. Or add password 'xxxx' option after the command. An example is given below to illustrate.
postgres=# start agent all;
hostname | status | description
----------+--------+-------------------------------------------
antdb01 | f | Authentication failed (username/password)
antdb02 | f | Authentication failed (username/password)
(2 rows)
postgres=#
postgres=# start agent all password'123';
hostname | status | description
----------+--------+-------------
antdb01 | t | success
antdb02 | t | success
(2 rows)
unable to exchange encryption keys
This error may occur when starting the agent in the cluster version because: the version of libssh2 is too low, which can be solved by upgrading the version of libssh2. You can install libssh2 by compiling the source code. Step 1 Download at https://www.libssh2.org/ Step 2 Compile and install the source code (root execution)
wget https://www.libssh2.org/download/libssh2-1.9.0.tar.gz
tar xzvf libssh2-1.9.0.tar.gz
cd libssh2-1.9.0
./configure
make
make install
A C code to check the libssh2 version is provided here, saved as check_libssh2.c.
#include <stdio.h>
#include <libssh2.h>
int main ()
{
printf("libssh2 version: %s\n", LIBSSH2_VERSION );
}
Compile:
gcc check_libssh2.c -o check_libssh2
Execute:
./check_libssh2
The expected output is as foloows:
libssh2 version: 1.9.0