File size: 7,408 Bytes
416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae 416e1ba ce801ae | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 | ---
license: other
tags:
- php
- php-extension
- mongodb
- mssql
- sqlsrv
- pdo_sqlsrv
- offline
- air-gapped
pretty_name: PHP MongoDB & MSSQL Extension Binaries + Offline Runtime (Windows + Linux)
---
# PHP MongoDB & MSSQL Extensions β Offline Bundle (Windows + Linux)
A **self-contained, air-gap-ready** bundle of prebuilt PHP extension binaries for **MongoDB** and
**Microsoft SQL Server** (`sqlsrv` + `pdo_sqlsrv`), **plus every runtime dependency** normally
downloaded from the internet at install time. Designed to be copied into an **isolated network with
no internet access**.
Covers **PHP 7.4, 8.0, 8.1, 8.2, 8.3, 8.4** on **Windows (x64 + x86)** and **Linux (x86_64)**.
> **Clarifications on the original request**
> - There is **no "PHP 7.46"** β PHP 7.x ended at 7.4.33. This bundle targets **PHP β₯ 7.4**.
> - On **Windows** PHP extensions are `.dll` (`php_mongodb.dll`, `php_sqlsrv.dll`, `php_pdo_sqlsrv.dll`);
> `.so` files are **Linux-only**. Both are provided, correctly per-OS.
---
## What's in the box
| Component | Windows | Linux |
|-----------|---------|-------|
| **mongodb** extension | β
7.4β8.4, x64+x86, TS+NTS | β
7.4β8.4 (RHEL 9 + Debian 12) |
| **sqlsrv** extension | β
7.4β8.4, x64+x86, TS+NTS | β
7.4β8.4 (RHEL 9) |
| **pdo_sqlsrv** extension | β
7.4β8.4, x64+x86, TS+NTS | β
7.4β8.4 (RHEL 9) |
| **MS ODBC Driver** (MSSQL runtime dep) | β
v17 + v18, x64+x86 (MSI) | β
v17 + v18 (Debian `.deb` + RHEL `.rpm`) |
| **Visual C++ Redistributable** (DLL runtime dep) | β
x64 + x86 | n/a |
**109 files, ~156 MB.** Every binary is listed with a SHA-256 in [`SHA256SUMS`](SHA256SUMS).
---
## Directory layout
```
windows/php<VER>/<ts|nts>/<x64|x86>/php_mongodb.dll
/php_sqlsrv.dll
/php_pdo_sqlsrv.dll
linux/rhel9/php<VER>/x64/mongodb.so # RHEL/Rocky/Alma/CentOS 9 (complete: all 3 exts)
/sqlsrv.so
/pdo_sqlsrv.so
linux/debian12/php<VER>/x64/mongodb.so # Debian 12 / Ubuntu (mongodb only)
runtime/windows/ msodbcsql18_x64.msi msodbcsql18_x86.msi
msodbcsql17_x64.msi msodbcsql17_x86.msi
VC_redist.x64.exe VC_redist.x86.exe
runtime/linux/debian12/ msodbcsql18_*.deb msodbcsql17_*.deb
runtime/linux/rhel9/ msodbcsql18-*.rpm msodbcsql17-*.rpm
SHA256SUMS
LINUX-MSSQL-BUILD.md # fallback: build sqlsrv/pdo_sqlsrv on other distros
```
`ts` = Thread-Safe (Apache mod_php); `nts` = Non-Thread-Safe (php-fpm / FastCGI / CLI β the usual pick).
Check yours: `php -i | grep "Thread Safety"` (Linux) or `php -i | findstr "Thread"` (Windows).
---
## Offline install
### Windows
1. **Install the VC++ redistributable once per machine** (required for the DLLs to load):
run `runtime/windows/VC_redist.x64.exe` (and/or the x86 one for 32-bit PHP).
2. **For MSSQL only** β install the ODBC driver:
`msiexec /i runtime\windows\msodbcsql18_x64.msi IACCEPTMSODBCSQLLICENSETERMS=YES` (v18 recommended; v17 also included).
3. Match your PHP build (`php -i` β *PHP Version*, *Thread Safety*, *Architecture*) and copy the DLL(s)
from `windows/php<VER>/<ts|nts>/<arch>/` into your PHP `ext\` directory.
4. Enable in `php.ini`:
```ini
extension=php_mongodb.dll
extension=php_sqlsrv.dll
extension=php_pdo_sqlsrv.dll
```
5. Restart the web server / PHP-FPM; verify with `php -m`.
### Linux β RHEL / Rocky / Alma / CentOS 9
1. **For MSSQL only** β install the ODBC driver (offline):
```bash
sudo ACCEPT_EULA=Y rpm -i runtime/linux/rhel9/msodbcsql18-*.rpm
# requires unixODBC from your base OS media/repo: sudo dnf install unixODBC
```
2. Copy the `.so` for your PHP version to the extension dir (`php-config --extension-dir`, e.g.
`/usr/lib64/php/modules/`):
```bash
sudo cp linux/rhel9/php8.3/x64/{mongodb.so,sqlsrv.so,pdo_sqlsrv.so} $(php-config --extension-dir)/
```
3. Enable via `.ini` files in your PHP `conf.d`:
```ini
extension=mongodb.so
extension=sqlsrv.so
extension=pdo_sqlsrv.so
```
4. `php -m | grep -Ei 'mongodb|sqlsrv'` to verify.
### Linux β Debian 12 / Ubuntu
- **mongodb** is provided under `linux/debian12/php<VER>/x64/mongodb.so` β copy it to your
extension dir (`php -i | grep extension_dir`) and add `extension=mongodb.so`.
- **MSSQL:** install the ODBC driver from `runtime/linux/debian12/msodbcsql18_*.deb`
(`sudo ACCEPT_EULA=Y dpkg -i ...`; needs `unixodbc` from base repo). Prebuilt `sqlsrv.so` /
`pdo_sqlsrv.so` for Debian are **not** in this bundle (Microsoft ships them as source only) β either
reuse the RHEL 9 `.so` if your glibc is compatible, or compile them with
[`LINUX-MSSQL-BUILD.md`](LINUX-MSSQL-BUILD.md) on a connected build box and copy the result in.
---
## β οΈ Important notes
- **glibc only.** All Linux `.so` are glibc builds β they will **not** run on **musl** distros
(Alpine). On Alpine use `apk add php<ver>-mongodb` / build against musl.
- **PHP minor must match exactly.** A `php8.2` `.so`/`.dll` only loads in PHP 8.2.
- **Base-OS dependency:** the MSSQL extensions require **unixODBC** (Linux) β a standard base-repo
package β in addition to the Microsoft ODBC driver included here. It's usually already installed.
- **Mixing distros:** the RHEL 9 and Debian 12 `.so` are ABI-compatible for the same PHP minor on
most modern glibc systems, but for production prefer the set matching your actual distro.
## Version summary
| PHP | Win mongodb | Win sqlsrv/pdo | Linux mongodb (rhel9 / deb12) | Linux sqlsrv/pdo (rhel9) |
|-----|-------------|----------------|-------------------------------|--------------------------|
| 7.4 | 1.20.1 | 5.10.0 | 1.20.1 / 1.20.1 | 5.10.1 |
| 8.0 | 1.20.1 | 5.10.0 | 1.20.1 / 1.20.1 | 5.11.1 |
| 8.1 | 2.4.1 | 5.12.0 | 2.4.1 / 2.1.4 | 5.12.0 |
| 8.2 | 2.4.1 | 5.12.0 | 2.4.1 / 2.1.4 | 5.12.0 |
| 8.3 | 2.4.1 | 5.13.3 | 2.4.1 / 2.1.4 | 5.13.3 |
| 8.4 | 2.4.1 | 5.13.3 | 2.4.1 / 2.1.4 | 5.13.3 |
ODBC driver: v18.6.2.1 + v17 (17.10.6.1 Win / 17.11.1.1 Linux). VC++ Redist: VS2015β2022 (17.x).
## Sources & provenance (all unmodified upstream)
- **Windows DLLs:** official PECL β https://downloads.php.net/~windows/pecl/releases/
- **Linux mongodb.so (Debian 12):** https://packages.sury.org/ (deb.sury.org)
- **Linux .so (RHEL 9):** Remi's RPM repository β https://rpms.remirepo.net/enterprise/9/
- **MS ODBC Driver & Linux packages:** https://packages.microsoft.com / download.microsoft.com
- **VC++ Redistributable:** https://aka.ms/vs/17/release/
Verify integrity with `sha256sum -c SHA256SUMS` (Linux) or `CertUtil -hashfile <file> SHA256` (Windows).
## Licenses
- MongoDB PHP extension β **Apache-2.0**
- Microsoft Drivers for PHP for SQL Server (`sqlsrv`, `pdo_sqlsrv`) β **MIT**
- Microsoft ODBC Driver & Visual C++ Redistributable β **Microsoft EULA** (redistributed for
offline convenience; by installing you accept Microsoft's license terms). All trademarks belong to
their respective owners. This repo is an unofficial convenience mirror.
|