PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak skonfigurować postgresql po raz pierwszy?

Pozostałe odpowiedzi nie były dla mnie całkowicie satysfakcjonujące. Oto, co zadziałało w przypadku postgresql-9.1 na Xubuntu 12.04.1 LTS.

  1. Połącz się z domyślną bazą danych za pomocą postgres użytkownika:

    sudo -u postgres szablon psql1

  2. Ustaw hasło dla postgres użytkownika, a następnie wyjdź z psql (Ctrl-D):

    ALTER USER postgres z zaszyfrowanym hasłem „xxxxxxx”;

  3. Edytuj pg_hba.conf plik:

    sudo vim /etc/postgresql/9.1/main/pg_hba.conf

    i zmień "peer" na "md5" w wierszu dotyczącym postgresu:

    lokalne   wszystkie     postgresy rówieśnik md5

    Aby dowiedzieć się, jakiej wersji postgresql używasz, poszukaj folderu wersji w /etc/postgresql . Możesz także użyć Nano lub innego edytora zamiast VIM.

  4. Zrestartuj bazę danych :

    sudo /etc/init.d/postgresql restart

    (Tutaj możesz sprawdzić, czy działało z psql -U postgres ).

  5. Utwórz użytkownika o tej samej nazwie co Ty (aby go znaleźć, wpisz whoami ):

    sudo createuser -U postgres -d -e -E -l -P -r -s

    Opcje mówią postgresql, aby utworzył użytkownika, który może się logować, tworzyć bazy danych, tworzyć nowe role, jest superużytkownikiem i będzie miał zaszyfrowane hasło. Naprawdę ważne z nich to -P -E, więc zostaniesz poproszony o wpisanie hasła, które zostanie zaszyfrowane, oraz -d, abyś mógł wykonać createdb .

    Uważaj na hasła :najpierw dwukrotnie poprosi o nowe hasło (dla nowego użytkownika), powtórzone, a następnie raz o hasło postgres (określone w kroku 2).

  6. Ponownie edytuj pg_hba.conf (patrz krok 3 powyżej) i zmień "peer" na "md5" w wierszu dotyczącym "wszystkich" innych użytkowników:

    lokalne   wszystkie     wszystkie rówieśnik md5

  7. Uruchom ponownie (jak w kroku 4) i sprawdź, czy możesz się zalogować bez -U postgres:

    szablon psql1

    Zauważ, że jeśli zrobisz tylko psql , nie powiedzie się, ponieważ spróbuje połączyć się z domyślną bazą danych o tej samej nazwie co ty (np. whoami ). template1 to baza danych administratora, która jest tutaj od samego początku.

  8. Teraz createdb powinien działać.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lista kolumn z indeksami w PostgreSQL

  2. Docker czeka na uruchomienie postgresql

  3. Jak Asin() działa w PostgreSQL

  4. Widzisz i czyścisz pamięć podręczną/bufory Postgresa?

  5. Czy kolejność tabel w złączeniu ma znaczenie, gdy używane są złączenia LEWE (zewnętrzne)?