Merhaba,
Wsl2 üzerinden Ubuntu 18.04 sunucusu için işlemleri sağlıyorum.
Docker ile Sqlsrv driver eklentisi kurmaya çalıştım.
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
RUN curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
RUN apt-get update
RUN ACCEPT_EULA=Y apt-get install -y msodbcsql18 mssql-tools
RUN apt-get update
RUN apt-get install -y unixodbc-dev
RUN pecl install sqlsrv
RUN pecl install pdo_sqlsrv
RUN printf "; priority=20\n extension=sqlsrv.so\n" > /etc/php/8.1/mods-available/sqlsrv.ini
RUN printf "; priority=30\n extension=pdo_sqlsrv.so\n" > /etc/php/8.1/mods-available/pdo_sqlsrv.ini
RUN phpenmod sqlsrv pdo_sqlsrv
Pdo_sqlsrv ve sqlsrv , phpmyinfo üzerinde görüyorum.
Fakat remote bir sqlsrv sunucusundan data almaya çalışırken hata alıyorum.
DB::connection($database)->getPdo();
Hata : Could not connect to the database. Please check your configuration. error:SQLSTATE[HYT00]: [Microsoft][ODBC Driver 17 for SQL Server]Login timeout expired
Bu konu hakkında çok fazla hatayla karşılaşan olmuş. Ama hata çözümü hakkında net bir bilgi bulamadım.