sql >> Databasteknik >  >> RDS >> Sqlserver

Så här konfigurerar du Microsoft® ODBC Driver 11 för SQL Server® på RedHat Linux med PHP

Nedan finns steg för att installera, konfigurera och börja använda Microsoft SQL Server ODBC-drivrutinen för Linux, och använda den från PHP - det förutsätter att du redan har SQL Server tillgänglig och konfigurerad för att acceptera anslutningar över TCP/IP, även att du har en viss förtrogenhet med Linux. Först måste SQL Server (och lämplig databas) konfigureras för Windows- och SQL Server-autentisering. Detta kräver en omstart av SQL Server-tjänsten om den ändras. Dessutom måste servern också ha TCP/IP-anslutningar aktiverade med en statisk port definierad (jag kommer att använda standardvärdet 1433), och brandväggen på värden för SQL Server måste tillåta anslutningar till SQL Server på den statiska porten.

Ladda nödvändiga moduler:

  1. Kör följande kommandorad för att ta bort tidigare installationer.

     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. För att installera nya paket, kör följande kommandorad (installationsanvändaren måste ha skrivbehörighet till /opt-katalogen som standard.)

    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. Lägg till dessa två rader i /etc/httpd/conf/httpd.conf

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

Ladda in unixODBC

  1. Gå till http://www.unixodbc.org/ .

  2. Klicka på länken Ladda ner (unixODBC-2.3.0) till vänster på sidan.

  3. Klicka på länken Ladda ner på nästa sida och spara filen i mappen '~/Download'

  4. På din Linux-dator, kör följande kommando:

    cd ~/Downloads/
    
    tar xvzf unixODBC-2.3.0.tar.gz
    
  5. Byt till unixODBC-2.3.0-katalogen.

    cd unixODBC-2.3.0/
    
  6. Vid en kommandotolk skriver du följande kommando:

    CPPFLAGS="-DSIZEOF_LONG_INT=8"
    
  7. Vid en kommandotolk skriver du följande kommando:

    export CPPFLAGS
    
  8. Vid en kommandotolk skriver du följande kommando:

     ./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. Vid en kommandotolk (inloggad som root), skriv följande kommando

    make
    

    och tryck på enter och sedan på

    make install
    

    och tryck på enter.

Installera Microsoft® ODBC Driver 11

  1. Kör följande serie av kommandon,

     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
    

    och tryck på enter och sedan på

     cd  msodbcsql-11.0.2270.0
    

    och tryck på enter och sedan på

     ./install.sh install --lib-dir=/usr/local/lib64 --accept-license
    
     odbcinst -q -d -n "SQL Server Native Client 11.0"
    
  2. Redigera nu /etc/odbc.ini och lägg till ett avsnitt så här (ändra [serveradress] till din databasserver-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. Spara den och avsluta redigeraren. Skriv:

    vid en kommandotolk
    isql -v <DSN Name> <sql server authentication user name> <password>
    
  4. Därefter kör vi tre kommandon från skalet. (dessa kan ta upp till 15 sekunder vardera). Den tredje startar om Apache-webbservern.

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

    om installationen lyckades bör du se något i stil med detta:

    +---------------------------------------+
    | Connected!                            |
    |                                       |
    | sql-statement                         |
    | help [tablename]                      |
    | quit                                  |
    |                                       |
    +---------------------------------------+
    SQL>
    



  1. Uppdaterar datagridview med mysql

  2. Ingen Entity Framework-leverantör hittades för 'MySql.Data.MySqlClient' ADO.NET-leverantör

  3. PL/SQL-kontrolldatum är giltigt

  4. Varför är [datum] + ([tid] - [offset]) icke-deterministiskt i SQL Server 2008?