Rumah  >  Soal Jawab  >  teks badan

Pasang/dayakan pemacu sqlsrv dan pdo_sqlsrv php8.1 pada ubuntu20.0

Saya cuba mendayakan pemacu sqlsrv untuk php8.1 pada Ubuntu 20.0. Ia tidak menunjukkan sambungan dalam phpinfo().

Apabila cuba menyemak modul sqlsrv menggunakan arahan php -m output adalah seperti berikut:

Saya mengikuti dokumentasi rasmi di bawah:

Saya tidak pasti apa yang berlaku, sebarang cadangan akan dihargai.

The output of phpinfo() for php7.4:
The output of phpinfo() for php8.1:

Ini perkaranya:

Apa yang saya hilang di sini?

P粉501683874P粉501683874327 hari yang lalu823

membalas semua(2)saya akan balas

  • P粉823268006

    P粉8232680062023-11-02 00:55:33

    Saya dapat menyelesaikan masalah ini dengan menambah arahan berikut.

    pecl install sqlsrv pdo_sqlsrv
    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
    phpenmod -v 8.1 sqlsrv pdo_sqlsrv

    Anda perlu memulakan semula apache2 selepas itu

    balas
    0
  • P粉193307465

    P粉1933074652023-11-02 00:34:32

    Boleh cuba ini:

    1. switch to php8.1
    2. sudo pecl uninstall -r sqlsrv 
    3. sudo pecl uninstall -r pdo_sqlsrv 
    4. sudo pecl -d php_suffix=7.2 install sqlsrv
    5. sudo pecl -d php_suffix=7.2 install pdo_sqlsrv
    6. sudo service apache2 restart

    Sila ambil perhatian bahawa -r, --register-only tidak akan memadamkan fail, ia hanya akan mendaftarkan pakej sebagai tidak dipasang.

    Lihat sumber ini untuk maklumat lanjut. https://github.com/microsoft/msphpsql/issues/1145#issuecomment- 649682231

    balas
    0
  • Batalbalas