Dnia poniedziałek, 10 grudnia 2007 00:36, Jarek Buczyński napisał: > Hej > > Dzięki za wszystkie odpowiedzi. Czyli rootem (administratorem) > wszystkich baz serwera PostgreSQL jest użytkownik z kontem w systemie > linux a nie jak w MySQL uzytkownik root w bazie danych, tak? Niekoniecznie. Możesz mieć użytkowników bazy danych bez tworzenia odpowiednich kont w systemie. Administratorem danej bazy danych zostaje jej właściciel. Wszystkich dowolny użytkownik bazy któremu nadasz takie prawa. > > Mój plik pg_hba.conf wygląda tak (domyślna instalacja): > Mój wygląda tak # TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD # Database administrative login by UNIX sockets local all postgres ident sameuser # # All other connections by UNIX sockets local all all password # # All IPv4 connections from localhost host all all 127.0.0.1 255.255.255.255 password
>---------------- $createuser psql_admin
> ---------------------------------------------------------------------------
>----------------
>
> powoduje utworzenie nowego konta systemowego o takich prawach jakie ma
> postgres?
>
> Pytam dlatego ponieważ nie udało mi się tego zrobić:
>
> ---------------------------------------------------------------------------
>---------------- $ createuser psqladmin
> Shall the new role be a superuser? (y/n) y
Opowiedz n.
> wiec wywołuję jako postgres z dobrym haslem
>
a skąd znasz hasło użytkownika postgres ha?
> $ createuser -Upostgres -W psql_admin
> Shall the new role be a superuser? (y/n) y
> Password:
> createuser: could not connect to database postgres: FATAL: Ident
> authentication failed for user "postgres"
> ---------------------------------------------------------------------------
>----------------
>
> Co muszę zmienić w pg_hba.conf żeby to drugie przeszło i czemu teraz
> nie może się połączyć?
Dla użytkownika postgres masz ident sameuser a podajesz hasło.
Spróbuj z konta root wydać polecenie:
su postgres
createuser <nazwa_użytkownika>
Shall the new user be allowed to create databases? (y/n) y
Shall the new user be allowed to create more new users? (y/n) y
CREATE USER
Możliwe że już masz użytkownika psql_admin spróbuj innej nazwy.
możesz to sprawdzić tak:
Z konta root
su postgres
psql template1
Welcome to psql 7.4.7, 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
template1=# \du
Wyświetli listę użytkowników baz danych wraz z uprawnieniami.
List of database users
User name | User ID | Attributes
------------+---------+----------------------------
magdalena1 | 108 |
postgres | 1 | superuser, create database
W razie problemów pisz :D
Pozdrawiam
--
Sebastian Domanski Klucz PGP można wyszukać i pobrać z
http://stinkfoot.org:11371/
pgpU9AugfLZ4e.pgp
Description: PGP signature

