이번에 작업 환경을 Mac 으로 변경하면서
Docker를 이용해서 PHP + SQL Server 환경을 만들어 내야 했다.
문제는
기존에는 아래 링크에서 본대로 작업하여 문제 없이 사용하였는데,
https://docs.microsoft.com/ko-kr/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017
참고로 모두 작업 후
pecl install sqlsrv
pecl install pdo_sqlsrv
명령을 실행시켜 줘야 한다.
규모가 큰 프로젝트에 사용하면서 에러가 발생했다.
에러는 아래와 같다.
PHP Warning: PHP Startup: Unable to load dynamic library 'pdo_sqlsrv.so' (tried: /usr/lib64/php/modules/pdo_sqlsrv.so (/usr/lib64/php/modules/pdo_sqlsrv.so: undefined symbol: php_pdo_register_driver), /usr/lib64/php/modules/pdo_sqlsrv.so.so (/usr/lib64/php/modules/pdo_sqlsrv.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
이거 문제 덕분에 거의 2일은 사용된 것 같다.
결국 방법은
https://github.com/Microsoft/msphpsql/wiki/FAQ#what-is-this-error-php-startup-unable-to-load-dynamic-library-pdo_sqlsrvso
이 링크에 나와 있다.
결론적으로 말하자면
자신이 사용하게 될 곳의 extension 로드되는 곳이 있는데,
그 곳에 직접 extension=pdo_sqlsrv.so 후순위로 시작되도록 하면 되었던 것이다.
나의 경우
echo "extension=pdo_sqlsrv.so" >> /etc/php/7.2/fpm/conf.d/30-pdo_sqlsrv.so
이렇게 해서 해결 하였다.
'기기 삽질~' 카테고리의 다른 글
macos용 mysql workbench에서 Schemas 가 표시되지 않을 때 (3) | 2021.05.03 |
---|---|
맥(Mac)에서 pow를 이용하서 port proxy 사용하기 (0) | 2018.09.12 |
React Native에서 Visual Studio Android Emulator 사용하기 (0) | 2018.05.08 |
AWS의 Lightsail(Nginx)에 워드프레스 올리기 (1) | 2018.05.06 |
AWS로 VPS(lightsail) 서비스 이용하기 (0) | 2018.05.05 |