簡體   English   中英

為 Microsoft SQL 服務器安裝 ODBC 驅動程序和 php 驅動程序 ZA5C95B86291EA2709FCBE64458ED 服務器

[英]Install ODBC driver and php drivers for Microsoft SQL Server for Laravel Sail

我正在嘗試連接到 MS SQL 數據庫以提取一些數據並導入我的 MySQL 數據庫。 我正在使用最新版本的 Laravel 9 和 Laravel Sail。 這是我采取的步驟

sail artisan sail:publish Docker 然后在Dockerfile 8.1(我使用的PHP版本)下的Docker文件夾中添加以下內容

# Add repository ODBC and Install the Microsoft ODBC driver for SQL Server
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
    && curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list > /etc/apt/sources.list.d/mssql-release.list \
    && apt-get update \
    && ACCEPT_EULA=Y apt-get install -y msodbcsql18 \
    && ACCEPT_EULA=Y apt-get install -y mssql-tools18 \
    && apt-get install -y unixodbc-dev

# Install the PHP drivers for Microsoft SQL Server

RUN curl -O https://pear.php.net/go-pear.phar \
     && php go-pear.phar

RUN pecl install sqlsrv \
    && pecl install pdo_sqlsrv \
    && su \
    && printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/8.1/mods-available/sqlsrv.ini \
    && printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/8.1/mods-available/pdo_sqlsrv.ini \
    && exit \
    && phpenmod -v 8.1 sqlsrv pdo_sqlsrv 

然后我運行了sail build --no-cache ,一切都沒有錯誤地完成

但是當我嘗試連接到數據庫時,我得到了could not find driver錯誤

注意:我還在 my.env 文件中設置了所有數據庫變量

不確定這是否有幫助,但幾年前我能夠將 PHP web 站點(Laravel)與 MS SQL 服務器連接起來。

唯一有效的驅動程序來自 Git 上的 Microsoft 存儲庫: https://github.com/Microsoft/msphpsql/releases

注意:web 站點在 MS Windows 服務器上運行。

親切地,房車。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM