ODBC_connect runs only with psql user

2019-09-02 18:33发布

I have a php script who ask data from a odbc database (pervasive client).

When i run the script in CLI as the psql user (which the installer created) , then i have no problems and the script runs.

When i run the script in browser ( as www-data) or in CLI as root or as a cronjob then i receive the error :

PHP Warning:  odbc_connect(): SQL error: [unixODBC][Driver Manager]Can't open lib '/usr/local/psql/lib64/libodbcci.so' : file not found, SQL state 01000 in SQLConnect in /var/ww....

i have added the user www-data & root in the groups that the pervasive client has installed.

Everything runs on a Debian server.

1条回答
We Are One
2楼-- · 2019-09-02 18:47

Solution, as revealed in comments --

Set the environment variables for each user and process that needs to perform the task, to match the environment that was active for PHP and the psql user.

This was achieved by using a shellscript for the full task.

查看更多
登录 后发表回答