PostgreSQL
estas potenca datumbaza motoro, kiu havas karakterizaĵojn kaj funkciojn
ekvivalentajn al multaj direktistoj de komercaj datumbazoj. Estas pli kompletaj ol MySQL ĉar ĝi permesas stokitajn metodojn, integrecajn devigojn, vidpunktoj, ktp. kvankam en la lastaj versioj de MySQL faris grandajn paŝojn en tiu direkto.
Instalado
En Ubuntu disponeblaj pakoj por multnombraj PostgreSQL versioj: 7.4,
8.0, 8.1 kaj 8.2 por instali la plej lastan version, se vi bezonas iun
supre. La pakoj bezonataj por kompleta instalado estas tiuj de la kliento (PostgreSQL-kliento-8.2) kaj la servilo flanko (PostgreSQL-8.2). La kliento komputilo kiu ni uzas kiel ni nur bezonas la kliento pakoj. Recomentable ankaŭ instali grafikan kliento kiu havigos la interago kun la servanto. Grafika kliento estas bona pgAdmin III , kiu funkcias tre bone.
Se vi dubas ke vi bezonas, vi povas instali la tri pakojn:
$ Ŝvitas aptitude install PostgreSQL-8.2 PostgreSQL-kliento-8.2 pgadmin3
| Memoru malinstali ajnan version de PostgreSQL vi ne bezonas ne tuŝos la agadon de via sistemo. |
Pro sekurecaj kialoj establi la novan pasvorton al la sistemo kreita de PostgreSQL
$ sudo passwd Postgres
Ŝanĝi aliro privilegiojn Postgres uzanto ŝelon kun la sekva komando:
$ sudo vipw
Kaj ŝanĝi la Postgres uzanto konko "/ bin / malvera" al "/ bin / bash". Tiam ni iris al gravuri kun ellasilo ": wq". Por kontroli, ke la instalado sukcesis ni aliri la servilon konko datumbazo:
$ sudo su Postgres-c "psql template1"
Se aliro estis sukcesa ŝanĝis la pasvorton por la uzanto defaŭlta datumbazo servilo:
template1=# ALTER USER postgres WITH PASSWORD 'nueva_contraseña';
Vi ricevos la sekvan mesaĝon konfirmante la transakcio:
Alter ROLO
Eliro la ŝelo datumbazo servilo kun la ordono \ q:
template1 = # \q
Agordo
Permesu fora rilatoj
Pro sekurecaj kialoj, la defaŭlta agordo ne permesas eksteraj rilatoj. Por tio, vi devas redakti / etc/postgresql/8.2/main/postgresql.conf.
$ sudo gedit / etc/postgresql/8.2/main/postgresql.conf
Nun serĉi la sekvaj linioj estas dirita:
# Listen_addresses = 'localhost'
Kaj anstataŭigi ĝin per la jena linio:
listen_addresses = '*'
Tiam serĉi la sekva linio kaj forigi la komento marko:
# Password_encryption = en
Kaj ni devus esti la jenaj:
password_encryption = en
Konservi la ŝanĝojn kaj restartu la domajno por ke la ŝanĝoj efektiviĝos:
$ sudo /etc/init.d/postgresql-8.2 rekomencos
Agordi la aliro listo
La agordo de la aliro listo povas diri al PostgreSQL kiu
aŭtentokontrolo metodo por uzi kaj konstrui konfidon por iuj maŝinoj kaj
retoj. Vi devas redakti la dosieron / etc/postgresql/8.2/main/pg_hba.conf:
$ Ŝvitas vidis / etc/postgresql/8.2/main/pg_hba.conf
Fine de la dosiero estas listo de defaŭlta aliro, nun, depende de via bezono oni povas fari la sekvaj:
- Se vi bezonas ajna uzanto por konekti tra specifa IP-adreso, aldonu la sekvan linion en la fino:
gastigas ĉiujn ĉiuj 192.168.1.4 255.255.255.0 md5
| La IP-adreso kaj subreto masko estas ekzemploj, anstataŭigi per uzanto datumojn kiuj postulas konektanta. |
- Se vi bezonas ajna uzanto konektas tra aparta IP sendepende de la pasvorton (ni fidas tiun IP), la linio estas:
gastigas ĉiujn ĉiuj 192.168.1.4 255.255.255.255 konfido
- Se vi bezonas ajna uzanto (uzanto autenticando datumbazo, kompreneble) estas koneksa per iu IP-adreso, aldonu la sekvan linion en la fino:
gastigas ĉiujn ĉiuj 0.0.0.0 0.0.0.0 md5
- Se aparta uzanto bezonas konekti al aparta datumbazo uzante specifan IP-adreso, aldonu la sekvan linion en la fino:
MyUser MyDatabase gastiganto 192.168.1.4 255.255.255.0 md5
- Savas ŝanĝoj faritaj al la arkivo kaj restartu la demono por la ŝanĝojn preni efekto:
$ Ŝvitas / etc/init.d/postgresql-8.2 rekomencos
Uzante Direktado
PostgreSQL uzantoj havas kelkajn kapablojn kiuj difinas en lia kreado. Mi volas diri ke uzanto povas aŭ ne povas krei pli da uzantoj kaj uzanto povas aŭ ne krei datumbazojn.
En la ekzemplo vi povas vidi sube ni kreas uzanton kiu ne povas krei pli
da uzantoj (ne administranto) sed povas krei pli datumbazojn. La-P kaŭzas al ni por peti la pasvorton vi atribuas al la uzanto. Alie la uzanto estos kreita sen pasvorto.
$ createuser -A -d -P -h host -U usuario nuevo_usuario
Enter password for user "nuevo_usuario":
Enter it again:
Kiel diskutis pli supre, estas administrantoj uzanto (povas krei aliajn uzantojn). Evidente ĉi komando devas esti ekzekutita de uzanto kun tiu trajto.
Simile oni povas forviŝi uzanto tiamaniere:
$ Dropuser-h gastiganto-Aŭ uzanto usuario_borrar
Rezerva
Por subteni datumbazo havas jena komando:
$ Pg_dump-h gastiganto-Aŭ uzanto db_name> nombre_bd.sql
Por fari restaŭrkopion de ĉiuj PostgreSQL datumbazoj de servilo, uzu ĉi tiun skripton ankaŭ:
#/bin/bash
## BEGIN config # #
Host = localhost
BACKUP_DIR = tmp
## End config # #
if [! BACKUP_DIR-d], then
mkdir-p $ BACKUP_DIR
fi
POSTGRE_DBS = $ (psql-h $ HOST-Aŭ Postgres-l | awk '(NR> 2) && (/ [a-za-Z0-9] + [] + [|] /) && ($ 0! ~ / Ŝablono [0-9] /) {print $ 1} ');
for DB in $ POSTGRE_DBS, faru
eĥo "* datumoj de PostgreSQL Backuping $ DB @ $ HOST ..."
pg_dump-h $ HOST-Aŭ Postgres $ DB> $ BACKUP_DIR / pg_ $ DB. SQL
farita
Por restarigi backup:
psql-d dbname-f archivo.pgdump
Vidu ankaŭ
Eksteraj Ligiloj
Nenhum comentário:
Postar um comentário