Meniu

Dezvoltarea unui site PHP cu baze de date PostgreSQL

Cu ajutorul acestui tutorial veti afla cea mai usoara modalitate de a instala si seta aplicatii precum PostgreSQL, Apache si PHP. In acest articol voi trata modul de instalare si configurare a unui server WEB (utilizam Apache ca server web) cu un modul de PHP si cu serverul de baze de date PostgreSQL. Cu aceste produse, care sunt gratuite, puteti construi site-uri cu continut dinamic preluAnd date din baza de date PostgreSQL, cu ajutorul limbajului de scripting numit PHP.

Pentru a putea face ceea ce ne-am propus trebuie sa avem instalat Linux-ul si ne mai trebuie pachetele cu surse ale celor trei produse. Presupunem ca vrem sa instalam : Apache 1.3.x ,PHP 4.0.x si PostgreSQL 7.0.x. Pentru aceasta trebuie sa download-am cele trei produse astfel:

APACHE
PHP
POSTGRESQL

Acestea le gasiti la adresele urmatoare:
APACHE - www.apache.org
PHP - http://www.php.net
POSTGRESQL - http://www.postgresql.org.

Odata ce am facut rost de cele trei pachete vom instala pachetele In directoare astfel: APACHE in /usr/local/apache, PHP ca modul al APACHE si POSTGRESQL In /usr/local/pgsql/, si catalogul de web este: /usr/local/apache/htdocs.


Instalarea server-ului POSTGRESQL
In primul rInd trebuie sa cream un cont pentru server-ul de baze de date astfel:

# su
# /usr/sbin/adduser postgres
# passwd postgres
# exit

Odata ce am facut aceasta cream directoarele necesare pentru a putea instala server-ul POSTGRESQL cu permisiunile adecvate:

# su
# cd /usr/src
# mkdir pgsql
# chown postgres:postgres pgsql
# cd /usr/local
# mkdir pgsql
# chown postgres:postgres pgsql
# exit

Acum incepem cu procesul de compilare si instalare:

# su postgres
# cd /usr/src/pgsql
# tar xzvf /local/download/postgres-7.0.x.tar.gz

Aici difera un pic in functie de versiune, configure poate fi ?n directorul postgres-7.0.x/src sau poate fi in postgres-7.0.x. Deci vedeti unde este, eventual dintr-o alta consola si apoi faceti schimbarea de director:

# cd /usr/src/pgsql/postgresql-7.0.x/src
# ./configure --prefix=/usr/local/pgsql \
--with-tcl --with-perl
# gmake all > make.log 2>&1 &
# tail -f make.install.log
# exit

Acum trebuie sa configuram sistemul si sa-l configuram astfel incat sistemul sa stie unde sunt bibliotecile, trebuie sa actualizam fisierul /etc/ld.so.conf:

# su
# echo /usr/local/pgsql/lib >> /etc/ld.so.conf
# /sbin/ldconfig
# exit

De asemenea trebuie sa actualizam fisierul ~/.bash_profile al contului de administrator al serverului POSTGRESQL:

# su postgres

Apoi editam fisierul ~/.bash_profile si adaugam urmatoarele linii:
PATH =$PATH:/usr/local/pgsql/bin
MANPATH=$MANPATH:/usr/local/pgsql/man
PGLIB=/usr/local/pgsql/lib
PGDATA=/usr/local/pgsql/data
export PATH MANPATH PGLIB PGDATA

Odata ce am instalat si configurat serverul de baze de date POSTGRESQL trebuie sa initializam si sa pornim server-ul astfel:

# su postgres
# initdb
# cd
# nohup postmaster -i > pgserver.log 2>&1 &
********************************************


Presupunem ca avem o baza de date numita Baza cu o tabela numita Test.
Aceasta o cream astfel, dupa ce am pornit server-ul cu comanda de mai sus:

# createdb Baza
# psql Baza
Baza=> create table Test(Nume varchar(20),Prenume varchar(20),
Baza-> Email varchar(30));

Astfel ati creat baza de date Baza si in cadrul ei tabela Test.
Acum nu mai ramane decit sa introduceti citeva inregistrari ca sa aveti o baza de date. Aceasta se face astfel:

Baza=>INSERT INTO Test VALUES('Ionescu','Ion',' ionescu@gnulinux.ro ');
Baza=>INSERT INTO Test VALUES('Popescu','Marin',' popescu@gnulinux.ro ');
Baza=>INSERT INTO Test VALUES('Marin','Adrian',' marin@gnulinux.ro ');

Si puteti introduce cate inregistrari doriti.
********************************************
Acum trebuie sa setam drepturi de extragere pentru utilizatorul folosit de server-ul de web Apache:

# su postgres
# psql Baza
Baza=> GRANT SELECT ON Test TO nobody;
Baza=> \z
Baza=> \q
# exit

In prealabil trebuia creat user-ul nobody cu comanda:

# createuser nobody

altfel riscati ca server-ul sa va spuna ca user-ul nobody nu exista.

Comanda createuser nobody o dati dupa ce ati intrat ca utilizator postgres si ati pornit server-ul cu comanda amintita mai sus (cea cu nohup postmaster).

John Doe

Articole publicate de la contributori ce nu detin un cont pe gnulinux.ro. Continutul este verificat sumar, iar raspunderea apartine contributorilor.
  • | 340 articole

Nici un comentariu inca. Fii primul!
  • powered by Verysign