Next Previous Contents

27. Versione di PostgreSQL per Windows 95/Windows NT

I binari di PostgreSQL per Windows NT, sono disponibili presso:

Scaricate i binari, decomprimeteli, e seguite le istruzioni descritte in Installazione di PostgreSQL partendo dal passo 13.

Se volete ri-compilare l'albero dei sorgenti, seguite le istruzioni date più avanti. La versione per NT è stata realizzata con il pacchetto cygwin32 di Cygnus, che contiene gcc e gmake, per Win NT/95.

Presso questo sito potete anche ottenere il file cdk.exe (il file auto estraente di gnu-win32)

27.1 Autori della versione per NT

Gli autori della versione di PostgreSQL per Windows NT, sono:

27.2 Installazione del pacchetto Cygwin

  1. Scaricate ftp://go.cygnus.com/pub/sourceware.cygnus.com/cygwin/latest/full.exe
  2. Eseguite full.exe ed installate nella directory c:\Unix\Root .
  3. Eseguite Cygwin. Digitate 'mount --help' per leggere la documentazione. Potete usare l'opzione -f per forzare il montaggio. Poi eseguite "umount / " e "mount c:\Unix\Root /"

27.3 Messa a punto della finestra di Bash

Dopo l'installazione del pacchetto Cygwin, fate quanto segue per impostare l'ambiente di lavoro:

1. Installate l'editor 'Vim', evoluzione di Vi. Vedere http://metalab.unc.edu/LDP/HOWTO/Vim-HOWTO.html

2. La finestra predefinita della bash di cygwin, è una finestra di 24 righe con sfondo nero. Per impostare il colore di sfondo e le dimensioni della finestra di bash, fate click su NT-Start->Control-panel->MS DOS; cambiate il colore di sfondo nel colore grigio, e portate la lunghezza della finestra a 70 righe.

(OPPURE) fate click col tasto destro sulla barra del titolo della finestra, e cambiate le proprietà.

3. Aprite in edit cygnus.bat , situato nella directory c:\cygnus\cywinb20 , ed impostate quanto segue:


set HOME=c:\cygnus\cygwinb20
bash --login

Modificate anche  /.bash_profile , e aggiungete queste righe


set -o vi
PATH=$PATH:/usr/local/bin:/usr/bin
export PATH

4. Per abilitare l'elaborazione dello storico della riga di comando, impartite il comando:

bash$ set -o vi

Usando i tasti l,k,j,h potete usare i comandi di vi per elaborare lo storico della riga di comando. Potete così ripetere o modificare i comandi precedentemente digitati, risparmiando tempo nella digitazione.

5. Potete effettuare il montaggio di dispositivi/directory usando questo comando:


bash$ umount /
bash$ mount "c:\cygnus"  /
bash$ mount "c:\cygnus\cygwin-b20\postgres" /usr/local/pgsql

6. Leggete l'help in linea con:


bash$ mount --help
bash$ ls --help

27.4 Installazione degli strumenti di Andy Piper

  1. Recatevi presso ftp://ftp.xemacs.org/pub/xemacs/aux/ e scaricate cygwin-b20-local.tar.bz2 nella directory c:/Unix/Root .
  2. cd c:/Unix/Root; bunzip2 cygwin-b20-local.tar.bz2
  3. tar -xvf cygwin-b20-local.tar
  4. cd /local/bin; sh check_cygwin_setup.sh
  5. Dopo aver superato il passo 4, vedrete il seguente messaggio:
    You don't have /bin would you like to mount cygwin as /bin?"
    [ y/n ]
    Selezionate 'n', e alle altre opzioni va selezionato 'y'
    

  6. mount c:/Unix/Root/cygwin-b20/H-i586-cygwin32/i586-cygwin32/bin /bin
  7. cd c:/Unix/Root/cygwin-b20/H-i586-cygwin32/i586-cygwin32; mkdir libexec share man etc sbin info
  8. cp -R /local/{ bin,libexec,share,man,etc,sbin,info,include }

27.5 Installazione del pacchetto Cygwin32 IPC di Ludovic Lange

  1. Recatevi presso http://www.multione.capgemini.fr/tools/pack_ipc e scaricate cygwin32_ipc-1.03.tgz nella directory c:/Unix/Root .
  2. tar -zxvf cygwin32_ipc-1.03.tgz
  3. cd cygwin32_ipc-1.03/src ed eseguite 'make'
  4. mkdir -p c:/usr/local/{bin,include,lib,include/sys}
    cp /cygwin32_ipc-1.03/bin/* c:/usr/local/bin
    cp /cygwin32_ipc-1.03/include/sys/* c:/usr/local/include/sys
    cp /cygwin32_ipc-1.03/lib/* c:/usr/local/lib
    cp c:/usr/local/bin/* /bin
    cp c:/Unix/Root/cygwin-b20/H-i586-cygwin32/bin/* /bin
    

  5. mount c:/usr/local/bin /usr/local/bin
    mount c:/usr/local/include /usr/local/include
    mount c:/usr/local/lib /usr/local/lib
    cp /local/lib/* /usr/local/lib
    

27.6 Installazione di PostgreSQL

  1. Scaricate l'ultima versione del codice sorgente di PostgreSQL
  2. Postgres tratta tutti i file come binari, ed appaiono quindi i caratteri lf/cr, perciò eseguiamo le azioni 2, 3, 4, e 5:
    mkdir -p c:/Postgres/{Source,Binary}
    mkdir c:/Postgres/Binary/pgsql
    mkdir -p /usr/src/pgsql
    mkdir -p /usr/local/pgsql
    

  3. Copiate il codice sorgente di Postgres nella directory c:/Postgres/Source , poi
    tar -zxvf postgresql-6.5.3.tar.gz
    

  4. mv postgresql-6.5.3 pgsql
  5. Ora montate le directory:
    mount c:/Postgres/Source/pgsql /usr/src/pgsql
    mount c:/Unix/Root/cygwin-b20/share /sw/cygwin-b20/share
    

  6. mkdir -p /usr/local/pgsql/{bin,include,lib,data}
  7. cd /usr/src/pgsql/src/win32
  8. Copiate i file header:
    cp un.h c:/Unix/Root/cygwin-b20/H-i586-cygwin32/i586-cygwin32/include/sys
    cp endian.h c:/Unix/Root/cygwin-b20/H-i586-cygwin32/i586-cygwin32/include
    cp tcp.h c:/Unix/Root/cygwin-b20/H-i586-cygwin32/i586-cygwin32/include/netinet
    

  9. ln -s /usr/local/lib /usr/src/pgsql/src/backend/libpostgres.a
  10. cd /usr/src/pgsql/src, poi eseguite './configure'
  11. make > make.txt 2>&1
  12. make install > make.install.txt 2>&1
  13. cp /usr/local/pgsql/lib/pq.dll /usr/local/pgsql/bin
  14. Dopo il make install dovrete cambiare tutti i file di testo nella directory bin e lib, in modo che essi non contengano cose come cr/lf ed eof.
  15. Utilizzare un qualsiasi editor per creare .bashrc nella directory /, come segue:
    PATH=$PATH:/usr/local/pgsql/bin:/usr/local/bin
    PGDATA=/usr/local/pgsql/data
    PGLIB=/usr/local/pgsql/lib
    LD_LIBRARY_PATH=/usr/local/pgsql/lib:/usr/local/lib
    export LD_LIBRARY_PATH PATH PGDATA PGLIB
    

  16. source /.bashrc, poi eseguite 'initdb --username=xxxx' Notate che il proprietario del sistema DB deve essere diverso dal root/amministratore
  17. Modificate il file /usr/local/pgsql/data/pg_hba.conf, come segue:
    host        all     163.17.11.109   255.255.255.0   trust
    

  18. ipc-daemon.exe&
  19. postmaster -i&
  20. Eseguite ' psql -h nome_host template1'

Next Previous Contents