Как настроить драйвер Microsoft® ODBC 11 для SQL Server® в RedHat Linux с помощью PHP

Это о том, как установить Microsoft® ODBC Driver 11 для SQL Server® на RedHat Linux с PHP.


person Sri    schedule 30.08.2013    source источник


Ответы (1)


Ниже приведены шаги по установке, настройке и началу использования драйвера ODBC Microsoft SQL Server для Linux, а также его использование из PHP. Предполагается, что у вас уже есть SQL Server, настроенный для приема подключений через TCP/IP, а также что вы знакомы с линуксом. Во-первых, SQL Server (и соответствующая база данных) должны быть настроены для проверки подлинности Windows и SQL Server. Это требует перезапуска службы SQL Server в случае изменения. Кроме того, на сервере также должны быть включены подключения TCP/IP с определенным статическим портом (я буду использовать значение по умолчанию 1433), а брандмауэр на хосте для SQL Server должен разрешать подключения к SQL Server через статический порт.

Загрузите необходимые модули:

  1. Запустите следующую командную строку, чтобы удалить предыдущие установки.

     yum remove php httpd php-odbc php-pear.noarch php-pecl-apc php-xml php-xmlrpc php-tidy     php-intl php-imap php-pecl-memcache glibc libuuid1 krb5 openssl gcc unixodbc
    
  2. Чтобы установить новые пакеты, запустите следующую командную строку (установляющий пользователь должен иметь права на запись в каталог /opt по умолчанию.)

    yum install php httpd php-odbc php-pear.noarch php-pecl-apc php-xml php-xmlrpc php-tidy php-intl php-imap php-pecl-memcache glibc libuuid1 krb5 openssl gcc unixodbc
    
  3. Добавьте эти две строки в /etc/httpd/conf/httpd.conf

    SetEnv ODBCSYSINI /etc
    
    SetEnv ODBCINI /etc/odbc.ini
    

Загрузить unixODBC

  1. Перейдите на страницу http://www.unixodbc.org/.

  2. Щелкните ссылку «Загрузить» (unixODBC-2.3.0) в левой части страницы.

  3. Щелкните ссылку «Загрузить» на следующей странице и сохраните файл в папке «~/Download».

  4. На вашем компьютере с Linux выполните следующую команду:

    cd ~/Downloads/
    
    tar xvzf unixODBC-2.3.0.tar.gz
    
  5. Перейдите в каталог unixODBC-2.3.0.

    cd unixODBC-2.3.0/
    
  6. В командной строке введите следующую команду:

    CPPFLAGS="-DSIZEOF_LONG_INT=8"
    
  7. В командной строке введите следующую команду:

    export CPPFLAGS
    
  8. В командной строке введите следующую команду:

     ./configure --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc --enable-gui=no --enable-drivers=no --enable-iconv --with-iconv-char-enc=UTF8 --with-iconv-ucode-enc=UTF16LE
    
  9. В командной строке (войдя в систему как root) введите следующую команду

    make
    

    и нажмите ввод, а затем

    make install
    

    и нажмите ввод.

Установите драйвер Microsoft® ODBC 11

  1. Выполните следующую серию команд,

     wget http://download.microsoft.com/download/B/C/D/BCDD264C-7517-4B7D-8159- C99FC5535680/RedHat6/msodbcsql-11.0.2270.0.tar.gz
    and press enter, and then
    
    
     tar xzvf msodbcsql-11.0.2270.0.tar.gz
    

    и нажмите ввод, а затем

     cd  msodbcsql-11.0.2270.0
    

    и нажмите ввод, а затем

     ./install.sh install --lib-dir=/usr/local/lib64 --accept-license
    
     odbcinst -q -d -n "SQL Server Native Client 11.0"
    
  2. Теперь отредактируйте /etc/odbc.ini и добавьте такой раздел (измените [адрес сервера] на IP-адрес вашего сервера базы данных):

    [DSNname]
    Driver=SQL Server Native Client 11.0
    Description=My Sample ODBC Database Connection
    Trace=Yes
    Server=[server address]
    Port=1433
    Database=NSCDB_3
    
  3. Сохраните его и выйдите из редактора. В командной строке введите:

    isql -v <DSN Name> <sql server authentication user name> <password>
    
  4. Далее мы выполняем три команды из оболочки. (каждое может занять до 15 секунд). Третий перезапускает веб-сервер Apache.

    setsebool -P httpd_can_network_connect on
    setsebool -P httpd_can_network_connect_db on
    /etc/init.d/httpd restart
    

    если установка прошла успешно, вы должны увидеть что-то вроде этого:

    +---------------------------------------+
    | Connected!                            |
    |                                       |
    | sql-statement                         |
    | help [tablename]                      |
    | quit                                  |
    |                                       |
    +---------------------------------------+
    SQL>
    
person Sri    schedule 30.08.2013