Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak zacząć używać PostgreSQL?
Forum PHP.pl > Forum > Bazy danych > PostgreSQL
tzi
Do tej pory używałem MySQL ale musiałem skorzystać z innej bazy.
Zainstalowałem sobie Postgres 7.4 (wiem że stare ale musi być kompatybilne z inną bazą) i w tym momencie problem. Jak się zalogować do niej? Jak założyć użytkowników itp?
Próbowałem graficznie się dobrać do tego przez phpPGadmin ale tu ciągle mam "Logowanie niedozwolone".
Proszę o pomoc.
sf
Hm, w domu coś takiego mam zrobionego, taką właśnie ściągawkę. Jak nie za pomne to podrzuce wieczorem na forum.
bendi
Znajdz plik hba_conf i dodaj w nim, dla użytkownika postgres - trust, później z wiersza poleceń dodaj nowego użytkownika logując się:
> psql template1 postgres
I możesz używać pgAdmina
SongoQ
I proponuje odrazu zmiana hasla na usera postgres i dla usera postgres w hba_conf ustawienie md5
tzi
Cytat(bendi @ 4.10.2006, 14:03:34 ) *
Znajdz plik hba_conf i dodaj w nim, dla użytkownika postgres - trust, później z wiersza poleceń dodaj nowego użytkownika logując się:
> psql template1 postgres
I możesz używać pgAdmina


Nie mogłem znaleźć pliku hba_conf jedyne co znalazłem to /etc/postgres/7.4/main/pg_hba.conf ale tam nie ma nic o użytkowniku postgres.

Cytat(sf @ 4.10.2006, 12:45:46 ) *
Hm, w domu coś takiego mam zrobionego, taką właśnie ściągawkę. Jak nie za pomne to podrzuce wieczorem na forum.


Byłbym wdzięczny.
SongoQ
U mnie jest to w /etc/postgresql/8.1/main/pg_hba.conf

Poszukaj takiego wpisu: local all postgres
sf
To jest takie małe howto jak dodać nowego użytkownika winksmiley.jpg

1. Zaraz po instalacji..

Należy zalogować się na użytkownika postgres (dokładną nazwę użytkownika należy sprawdzić w pliku /etc/passwd).

[shell]
$ sudo su postgres
$ # lub
% su postgres

$ psql
[/shell]


2. Jak utworzyć nowego użytkownika?

[shell]
# CREATE USER sql;

# CREATE DATABASE kurs OWNER sql;
[/shell]

lub

[shell]
% createuser sql

% createdb -O sql kurs
[/shell]


3. Jak zmienić/ustawić użytkownikowi/własne hasło?

[shell]
# ALTER USER sql PASSWORD 'funnyPasWWW0rD';
[/shell]

4. Jak włączyć plpgsql?

[shell]
$ sudo su postgres createlang plpgsql template1
[/shell]
tzi
Cytat(sf @ 4.10.2006, 17:56:42 ) *
To jest takie małe howto jak dodać nowego użytkownika winksmiley.jpg

1. Zaraz po instalacji..

Należy zalogować się na użytkownika postgres (dokładną nazwę użytkownika należy sprawdzić w pliku /etc/passwd).

[shell]
$ sudo su postgres
$ # lub
% su postgres

$ psql
[/shell]
[...]


spróbowałem oto efekt:
tomek@TI:~$ sudo su postgres
Password:
postgres@TI:/home/tomek$ psql
psql: FATAL: database "postgres" does not exist
sf
psql --help

tam wyświetli taką linie :

-l list available databases, then exit

i już wiesz jakie bazy masz...

createdb - dodaje nową

psql -d NAZWA_BAZY <-- wchodzi na nia

jesli nie podasz parametru -d to domyslnie wchodzi na nazwe, ktora jest adekwatna do nazwy użytkownika
tzi
Dzięki waszej pomocy i własnym poszukwaniom udało mi się.
Zrobiłem to tak (bez jakichkolwiek zmian w plikach):

zalogowałem się do systemu jak zwykły użytkownik

przejołem uprawnienia root'a
tomek@serwer:/$ su
Password:

zalogowałem się jako użytkownik postgres
root@serwer:/# su - postgres

wybrałem istniejącą domyślnie bazę
postgres@serwer:~$ psql template1
Welcome to psql 7.4.12, the PostgreSQL interactive terminal.

Type: \copyright for distribution terms
\h for help with SQL commands
\? for help on internal slash commands
\g or terminate with semicolon to execute query
\q to quit

utworzyłem nowego użytkownika
template1=# create user sql_test;
CREATE USER

utworzyłem dla niego bazę
template1=# create database moj_test owner sql_test;
CREATE DATABASE

i sprawdziłem czy istnieje
template1=# \q
postgres@serwer:~$ psql -l
List of databases
Name | Owner | Encoding
-----------+----------+----------
moj_test | sql_test | UNICODE
template0 | postgres | UNICODE
template1 | postgres | UNICODE
(3 rows)

postgres@serwer:~$

wszystko to robiłem na świeżutko zainstalowanym PostgreSQL 7.4

tongue.gif jeszcze wiele muszę się nauczyć ale teraz mam nadzieje, że będzie mi łatwiej.

Dzięki wszystkim za pomoc

Jak opisałem wcześnie udało mi się utworzyć użytkownika i bazę. Na początek użytkownik nie ma hasła. Ale jakie jest moje zdziwienie gdy żadne z graficznych narzędzi do obsługi bazy nie może się z nią połączyć z phpPGadmin'em włącznie.

Otrzymuje komunikaty w stylu:
Error trying to connect to database 'moj_test' on host localhost
PostgreSQL error message:
Connection to database failed fe_sendauth: no password supplied ''


Czy to źle, że użytkownik nie ma hasła? Jeżeli tak to jak mu ustawić?
sf
Podawałem jak ustawić/zmienić hasło winksmiley.jpg
tzi
Cytat(sf @ 6.10.2006, 08:13:19 ) *
Podawałem jak ustawić/zmienić hasło winksmiley.jpg

Faktycznie, nie zauważyłem.

Postąpiłem tak jak opisałeś i ustawiłem hasło dla użytkownika postgres i sql które brzmi poiuyt (później sobie zmienie)

I nadal nic. Ten mój phpPGadmin jest dostępny pod adresem http://tzi.no-ip.org/phppgadmin/. Udostępniłem go w nadzieji że pozwoli to znaleźć rozwiązanie mojego problemu.

----------------------------------------------------------------------------
Już znalazłem.

na stronie: http://phppgadmin.sourceforge.net/?page=faq

jest taka porada:
Kod
Login errors

Q: I always get "Login failed" even though I'm _sure_ I'm using the right username and password.

A: Check the PostgreSQL log on your server, it will give the exact reason why the login is failing. Edit the pg_hba.conf file in your PostgreSQL data dir and make sure you have enabled access to the server properly.

If you've installed phpPgAdmin on a computer different from the PostgreSQL server, another likely reason may be that you have not started the PostgreSQL server with TCP/IP sockets enabled. To enable this, edit your postgresql.conf file and change this line:

    #tcpip_socket = false

to:

    tcpip_socket = true

and then restart PostgreSQL.
jezoo
Cytat(tzi @ 6.10.2006, 08:27:44 ) *
Już znalazłem.

na stronie: http://phppgadmin.sourceforge.net/?page=faq

jest taka porada:
Kod
Login errors

Q: I always get "Login failed" even though I'm _sure_ I'm using the right username and password.

A: Check the PostgreSQL log on your server, it will give the exact reason why the login is failing. Edit the pg_hba.conf file in your PostgreSQL data dir and make sure you have enabled access to the server properly.

If you've installed phpPgAdmin on a computer different from the PostgreSQL server, another likely reason may be that you have not started the PostgreSQL server with TCP/IP sockets enabled. To enable this, edit your postgresql.conf file and change this line:

    #tcpip_socket = false

to:

    tcpip_socket = true

and then restart PostgreSQL.


u mnie to nie poszlo, dalej nie moge polaczyc sie z baza za pomoca pgadmin:(
dodam ze uzywam postgre 8.1
czy ma ktos jakies koncepcje jak to uruchomic??
dr_bonzo
phpPgAdmin czy pgAdmin3 ? bo jest roznica - a jak masz mozliwosc to uzyj tego drugiego (zwykla aplikacja okienkowa)
jezoo
musze powiedziec, ze fajne narzedzie z tego pgadmin3 smile.gif i w koncu sie polaczylem dzieki dr_bonzo ale jeszcze musze spr czy mi w php zadziala smile.gif

-------
i musze stwierdzic, ze z php tez wspopracuje smile.gif

teraz to musze jeszcze chosty poobcinac <lol>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.