Heim > Backend-Entwicklung > PHP-Problem > So installieren Sie die MSSQL-Erweiterung für PHP in CentOS7

So installieren Sie die MSSQL-Erweiterung für PHP in CentOS7

醉折花枝作酒筹
Freigeben: 2023-03-09 17:30:01
nach vorne
2185 Leute haben es durchsucht

In diesem Artikel erfahren Sie, wie Sie die MSSQL-Erweiterung für PHP in CentOS7 installieren. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

So installieren Sie die MSSQL-Erweiterung für PHP in CentOS7

1. Laden Sie freetds

herunter. freetds

依次执行以下脚本:

cd /usr/local/src/
wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-patched.tar.gz
tar -zxvf freetds-patched.tar.gz
Nach dem Login kopieren

即,进入 /usr/local/src 目录(我一般习惯把编译用到的源代码放在这里),下载 freetds 的源码,然后解压。

2、安装 freetds

依次执行以下脚本:

cd freetds-1.2/
./configure --prefix=/usr/local/freetds --with-tdsver=7.4 --enable-msdblib
make && make install
Nach dem Login kopieren

注意上面的 freetds-1.2,根据你自己下载的不同 freetds 版本,这里可能会有所不同,反正就是进入你解压出来得到的文件夹。然后 --with-tdsver=7.4 这里,根据 SqlServer 的不同版本灵活选择,具体可以参考下图自行选择,我使用的是 SqlServer 2012,所以选择的 7.4 版本:

So installieren Sie die MSSQL-Erweiterung für PHP in CentOS7

以上版本选择的内容来自 freetds 的官方文档,文档地址:https://www.freetds.org/userguide/ChoosingTdsProtocol.html

3、配置 freetds

依次执行以下命令来初始化 freetds 配置:

echo "/usr/local/freetds/lib/" > /etc/ld.so.conf.d/freetds.conf
ldconfig
Nach dem Login kopieren

其他的配置不需要,网上有一些教程写要在 freetds.conf 中配置 MSSQL 的连接信息。其实大可不必,在调用的时候配置就可以了,也就是在 PHP 代码中配置,这样多灵活。

4、测试 freetds

执行以下命令来查看 freetds 版本:

# /usr/local/freetds/bin/tsql -C
Compile-time settings (established with the "configure" script)
                            Version: freetds v1.2
             freetds.conf directory: /usr/local/freetds/etc
     MS db-lib source compatibility: yes
        Sybase binary compatibility: no
                      Thread safety: yes
                      iconv library: yes
                        TDS version: 7.4
                              iODBC: no
                           unixodbc: no
              SSPI "trusted" logins: no
                           Kerberos: no
                            OpenSSL: yes
                             GnuTLS: no
                               MARS: yes
Nach dem Login kopieren

执行以下命令来测试 freetds 连接:

# /usr/local/freetds/bin/tsql -H example.com -p 1433 -U username -P password
locale is "en_US.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
1> select @@version
2> go

Microsoft SQL Server 2012 - 11.0.2100.60 (X64)
	Feb 10 2012 19:39:15
	Copyright (c) Microsoft Corporation
	Standard Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) (Hypervisor)

(1 row affected)
Nach dem Login kopieren

其中 example.comMSSQLhost 地址, usernamepassword 分别是 MSSQL 的用户名和密码。

5、下载 PHP-5.6.40 源码

依次执行以下脚本:

cd /usr/local/src/
wget https://www.php.net/distributions/php-5.6.40.tar.gz
tar -zxvf php-5.6.40.tar.gz
Nach dem Login kopieren

和上面下载 freetds 一样,这里不再赘述。

6、安装 PHP-5.6.40-MSSQL 扩展

依次执行以下脚本:

cd php-5.6.40/ext/mssql/
/www/server/php/56/bin/phpize
./configure --with-php-config=/www/server/php/56/bin/php-config --with-mssql=/usr/local/freetds/
make && make install
Nach dem Login kopieren

上面的 /www/server/php/56/bin/ 路径,因为的在宝塔中使用的 php 的安装路径是这个,所以路径就写成这样,大家根据自己情况调整。

得到类似如下的输出,说明扩展安装完成了:

...
Build complete.
Don&#39;t forget to run &#39;make test&#39;.

Installing shared extensions:     /www/server/php/56/lib/php/extensions/no-debug-non-zts-20131226/
Nach dem Login kopieren

7、修改 php.ini

这里在哪里修改大家就随意了,我就直接用宝塔前端修改了,没用命令行。在 php.ini 中添加如下几行:

[mssql]
extension=mssql.so
Nach dem Login kopieren

修改完成之后保存,然后重启 php 服务。

查看 phpinfo,可以看到 mssqlFühren Sie die folgenden Skripte nacheinander aus:

rrreee

Das heißt, geben Sie das Verzeichnis /usr/local/src ein (Ich bin es im Allgemeinen gewohnt, den für die Kompilierung verwendeten Quellcode hier abzulegen), den Quellcode von freetds herunterzuladen und ihn dann zu entpacken. So installieren Sie die MSSQL-Erweiterung für PHP in CentOS7

2. Installieren Sie freetds

Führen Sie die folgenden Skripte nacheinander aus:

rrreee

Achten Sie auf den oben genannten freetds-1.2, abhängig vom unterschiedlichen freetds, die Sie heruntergeladen haben Version, hier kann es auf jeden Fall anders sein, geben Sie einfach den Ordner ein, den Sie nach dem Entpacken erhalten haben. Dann können Sie --with-tdsver=7.4 entsprechend den verschiedenen Versionen von SqlServer auswählen code>SqlServer 2012, also die ausgewählte 7.4-Version: Bildbeschreibung hier einfügen

🎜Der in der obigen Version ausgewählte Inhalt stammt aus der offiziellen Dokumentation von freetds, Dokumentadresse: https://www.freetds. org/userguide/ChoosingTdsProtocol.html🎜 🎜3. Konfigurieren Sie freetds🎜Führen Sie die folgenden Befehle nacheinander aus, um die freetds-Konfiguration zu initialisieren: 🎜rrreee🎜Andere Konfigurationen sind nicht verfügbar Erforderlich. Es gibt einige Tutorials im Internet, die in MSSQL in code>freetds.conf geschrieben sind. Tatsächlich ist es nicht erforderlich, es beim Aufruf zu konfigurieren, dh im PHP-Code zu konfigurieren. 🎜🎜4. freetds testen 🎜Führen Sie den folgenden Befehl aus, um die freetds-Version zu überprüfen: 🎜rrreee🎜Führen Sie den folgenden Befehl aus, um die freetds zu testen /code>-Verbindung: 🎜rrreee🎜wobei example.com die Host-Adresse von MSSQL ist, Benutzername und password code> sind der Benutzername und das Passwort von MSSQL. 🎜🎜5. Laden Sie den PHP-5.6.40-Quellcode herunter. 🎜Führen Sie die folgenden Skripte nacheinander aus: 🎜rrreee🎜Das gleiche wie beim Herunterladen von freetds oben, also habe ich gewonnen Ich gehe hier nicht auf Details ein. 🎜🎜6. Installieren Sie die PHP-5.6.40-MSSQL-Erweiterung🎜Führen Sie die folgenden Skripte nacheinander aus: 🎜rrreee🎜den obigen /www/server/php/56/ bin/ Pfad, da der in der Pagode verwendete Installationspfad von <code>php dieser ist, also wird der Pfad so geschrieben. Sie können ihn entsprechend Ihrer eigenen Situation anpassen. 🎜🎜Erhalten Sie eine Ausgabe ähnlich der folgenden, die anzeigt, dass die Installation der Erweiterung abgeschlossen ist: 🎜rrreee🎜7. Ändern Sie php.ini🎜Sie können es hier ändern, ich werde es direkt verwenden Das Pagoden-Frontend wurde geändert, die Verwendung der Befehlszeile ist nicht erforderlich. Fügen Sie die folgenden Zeilen zu php.ini hinzu: 🎜rrreee🎜Speichern Sie die Änderungen nach Abschluss und starten Sie dann den php-Dienst neu. 🎜🎜Überprüfen Sie phpinfo und Sie können sehen, dass die Erweiterung mssql aktiviert wurde. 🎜🎜🎜🎜🎜Fertig. 🎜🎜Empfohlenes Lernen: 🎜php-Video-Tutorial🎜🎜

Das obige ist der detaillierte Inhalt vonSo installieren Sie die MSSQL-Erweiterung für PHP in CentOS7. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage