PHP, MSSQL · 2 min read · Oct 24, 2025

Включение MSSQL для PHP5 на Debian Lenny (тестирование)

Включение MSSQL для PHP5 на Debian Lenny (тестирование)

Недавно я установил Debian Etch 4.0, чтобы подготовить его для ispconfig. Зная, что у меня есть веб-сайт, которому нужна поддержка MSSQL, мне нужно было выяснить, как это сделать. Возможно, есть более простой способ, о котором я не знаю, но эта сложная задача была выполнена таким образом.

Шаг 1:

Первое, что я сделал, это использовал репозиторий тестирования Debian. Чтобы добавить этот репозиторий в вашу установку, выполните следующее (я предпочитаю использовать nano, но вы можете использовать любой редактор по вашему выбору):

nano /etc/apt/sources.list

Добавьте эти записи, чтобы ваш sources.list выглядел так:

deb http://debian.ludost.net/debian/ testing main contrib non-free
deb-src http://debian.ludost.net/debian/ testing main contrib non-free
deb http://security.debian.org/ testing/updates main contrib
deb-src http://security.debian.org/ testing/updates main contrib

Выйдите и сохраните.

Шаг 2:

Теперь выполните

apt-get update

Теперь выполните

apt-get dist-upgrade

Теперь мы на правильном пути…

Шаг 3:

apt-get install tsdodbc

Шаг 4:

Чтобы скомпилировать пакет php5-mssql, вам потребуется полный пакет freetds.

cd /usr/src/  
mkdir -p /usr/src/freetds  
cd /usr/src/freetds  
wget ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz  
tar -zxvf freetds-stable.tgz  
cd freetds-0.64  
./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --enable-msdblib --enable-dbmfix --with-gnu-ld  
make  
make install

Если вы получите ошибки во время установки, выполните это:

apt-get install build-essential debhelper

Это должно помочь. После этого у вас должен быть каталог /usr/local/freetds, содержащий ваш новосозданный freetds.

Шаг 5:

Теперь перейдите в каталог /usr/src, чтобы мы могли установить исходники php5:

cd /usr/src  
apt-get source php5

Теперь нам нужно получить все зависимости:

apt-get build-dep php5

Шаг 6:

Когда это завершится, перейдите в каталог php5-5.2.5:

cd php5-5.2.5

Теперь выполните директиву:

nano debian/modulelist

Найдите строку, которая говорит:

mysql MYSQL

Выше этой строки введите:

mssql MSSQL

Выйдите и сохраните.

Шаг 7:

nano debian/rules

Найдите строку, которая говорит:

--with-mysql=shared,/usr

Выше этой строки введите:

--with-mssql=shared,/usr/local/freetds \

Шаг 8:

Наконец, откройте файл debian/control и в конце добавьте:

Package: php5-mssql
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, ${php:Depends}, php5-common (= ${Source-Version})
Description: MSSQL module for php5
 This package provides a module for MSSQL using FreeTDS.
 .
 PHP5 is an HTML-embedded scripting language. Much of its syntax is borrowed
 from C, Java and Perl with a couple of unique PHP-specific features thrown
 in. The goal of the language is to allow web developers to write
 dynamically generated pages quickly.

Это должно быть все.

Шаг 9:

Теперь выполните следующую команду:

dpkg-buildpackage

Это займет некоторое время. Пойдите выпейте чашку кофе или возьмите газету и ознакомьтесь с новостями.

Шаг 10:

Теперь, когда это завершено, у вас будет множество .deb файлов в каталоге /usr/src, поэтому перейдите в этот каталог:

cd /usr/src

Пакет, который нам нужен, это php5-mssql_5.2.5-3_i386.deb:

dkpg -i php5-mssql_5.2.5-3_i386.deb

Шаг 11:

Последний шаг — убедиться, что у вас установлен php5-sybase.

apt-get install php5-sybase

Теперь вы можете настроить свои DNS-записи в /etc/freetds/freetds.conf и использовать функции mssql_ в php :>)

Этот гид был найден в сети и основан на php.net и форумах ubuntu. Я внес несколько небольших изменений, чтобы сделать руководство немного проще для понимания, и добавил инструкцию для ISPConfig ниже:

Одно примечание:

Если вы планируете установить ISPConfig, вам необходимо отредактировать файл конфигурации apache2.conf, расположенный в /etc/apache2:

cd /etc/apache2
nano apache2.conf

Найдите строку, которая говорит:

User ${APACHE_RUN_USER}

и

Group ${APACHE_RUN_GROUP}

и измените на:

User www-data
   Group www-data

Сохраните и выйдите.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.