Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Verschieben des clusters oder neues cluster erstellen

  1. #1
    torecki ist offline Neuer Benutzer
    Registriert seit
    05.01.2009
    Ort
    Dresden
    Beiträge
    4

    Standard Verschieben des clusters oder neues cluster erstellen

    Hallo,
    ich hab das noch nicht ganz kappiert. Ich möchte eine postgres-postgis Datenbank -- unter debian lenny -- aufsetzen und weiß, dass die Datenmenge den Platz in meiner /var übersteigt. Deshalb habe ich eine leere Partition meiner Festplatte als /Daten eingehängt.
    Ich hab mit
    Code:
    $ /usr/lib/postgresql/8.3/bin/initdb -W --lc-collate=C -D /Daten/pgsql/data
    ein neues cluster erzeugt und den server mit
    Code:
    $ /usr/lib/postgresql/8.3/bin/postgres -D /Daten/pgsql/data/
    LOG:  Datenbanksystem wurde am 2009-01-05 23:26:18 CET heruntergefahren
    LOG:  Autovacuum-Launcher startet
    LOG:  Datenbanksystem ist bereit um Verbindungen anzunehmen
    gestartet.
    Wie komme ich jetzt dort als user rauf und erzeuge eine Datenbank? Mit createdb ... erzeuge ich doch eine datenbank die dann im cluster unter /var/lib... liegt, oder?
    Oder sollte ich doch kein neues cluster erzeugen und den ordner unter /var/lib nach /Daten kopieren und einen symlink zurück nach /var/lib legen?
    Danke
    Torsten

  2. #2
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.056

    Standard

    Um das ganze etwas einfacher zu gestalten: wieso erstellst du keinen neuen Tablespace?

    Dokumentation: CREATE TABLESPACE


    Das dürfte dir die Arbeit um einiges vereinfachen.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  3. #3
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.468

    Standard

    Zitat Zitat von torecki Beitrag anzeigen
    Hallo,
    ich hab das noch nicht ganz kappiert. Ich möchte eine postgres-postgis Datenbank -- unter debian lenny -- aufsetzen und weiß, dass die Datenmenge den Platz in meiner /var übersteigt. Deshalb habe ich eine leere Partition meiner Festplatte als /Daten eingehängt.
    Ich hab mit
    Code:
    $ /usr/lib/postgresql/8.3/bin/initdb -W --lc-collate=C -D /Daten/pgsql/data
    ein neues cluster erzeugt und den server mit
    Code:
    $ /usr/lib/postgresql/8.3/bin/postgres -D /Daten/pgsql/data/
    LOG:  Datenbanksystem wurde am 2009-01-05 23:26:18 CET heruntergefahren
    LOG:  Autovacuum-Launcher startet
    LOG:  Datenbanksystem ist bereit um Verbindungen anzunehmen
    gestartet.
    Wie komme ich jetzt dort als user rauf und erzeuge eine Datenbank? Mit createdb ... erzeuge ich doch eine datenbank die dann im cluster unter /var/lib... liegt, oder?
    Nein, Mit initdb erzeugst Du einen DB-Cluster, in diesem liegen dann die einzelnen Datenbanken.
    Eine Instance von PG verwaltet einen Cluster.


    Oder sollte ich doch kein neues cluster erzeugen und den ordner unter /var/lib nach /Daten kopieren und einen symlink zurück nach /var/lib legen?
    Danke
    Torsten
    Je nachdem, was Du machen willst. Wenn vorhandene Daten erhalten bleiben sollen und nur weiterer Platz geschaffen werden soll, kannst Du das entweder mit dem kopieren und dem Symlink machen oder für neue Datenbanken/Tabellen/Indexe einfach neue Tablespaces auf Deiner neuen Platte nutzen. Mit verschiedenen Tablespaces zu arbeiten hätte zudem noch den Vorteil, schneller zu sein (Aufteilen von Tabellen und Indexe auf versch.Tablespaces und damit Platten)

    .oO( kann es sein, daß Dir das aber auch schon gestern im IRC erklärt wurde? )


    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  4. #4
    torecki ist offline Neuer Benutzer
    Registriert seit
    05.01.2009
    Ort
    Dresden
    Beiträge
    4

    Standard

    Zitat Zitat von ads Beitrag anzeigen
    Um das ganze etwas einfacher zu gestalten: wieso erstellst du keinen neuen Tablespace?

    Dokumentation: CREATE TABLESPACE


    Das dürfte dir die Arbeit um einiges vereinfachen.
    Jetzt nachdem ich weiß, dass es so etwas gibt würde ich das gern machen. Ich weiß nur noch nicht wie. Wenn ich als # su postgres
    $ CREATE TABLESPACE eingebe bekomme ich: bash: CREATE: command not found

    Hab ich noch was vergessen zu installieren oder muss man das anders machen?
    Danke
    Torsten

  5. #5
    sparrow ist offline Benutzer
    Registriert seit
    26.01.2007
    Beiträge
    36

    Standard

    Führe die entsprechenden Befehl mal in psql aus

  6. #6
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.056

    Standard

    Das "bash" sollte dich stutzig machen ...
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  7. #7
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.468

    Standard

    Zitat Zitat von torecki Beitrag anzeigen
    Jetzt nachdem ich weiß, dass es so etwas gibt würde ich das gern machen. Ich weiß nur noch nicht wie. Wenn ich als # su postgres
    $ CREATE TABLESPACE eingebe bekomme ich: bash: CREATE: command not found

    Hab ich noch was vergessen zu installieren oder muss man das anders machen?
    Danke
    Torsten
    Du landest nach su - postgres in einer normalen Shell, hier der bash. In dieser mußt Du psql starten und in psql Dein CREATE TABLESPACE machen. Als Einzeiler:

    Code:
    su - postgres -c "psql template1 -c 'create tablespace ...'"
    *ungetestet*, sollte aber gehen. Anschaulicher ist es aber, psql interaktiv zu benutzen.


    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  8. #8
    torecki ist offline Neuer Benutzer
    Registriert seit
    05.01.2009
    Ort
    Dresden
    Beiträge
    4

    Standard create tablespace, Schreibrechte auf Speichermedium

    Danke Andreas,
    ich bin bis jetzt davon ausgegangen, mit su postgres schon in einer postgres-shell zu sein.
    Jetzt habe ich aber das Problem, das postgres und ich als user keine Schreibberechtigung zu haben scheine
    Code:
    postgres=# CREATE TABLESPACE digit OWNER torsten LOCATION '/Daten/pgsql/data'
    ;
    FEHLER:  konnte Zugriffsrechte für Verzeichnis »/Daten/pgsql/data« nicht setzen: Die Operation ist nicht erlaubt
    Der Ordner /Daten gehört aber mir als user. Zu welcher Gruppe gehört postgres und die postgresql-user per default auf einem debian?
    Was ist grundsätzlich noch zu beachten wenn ich auf einem Speichermedium schreib- und lesezugriff als postgresuser haben will?
    Danke
    Torsten

  9. #9
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.468

    Standard

    Zitat Zitat von torecki Beitrag anzeigen
    Danke Andreas,
    ich bin bis jetzt davon ausgegangen, mit su postgres schon in einer postgres-shell zu sein.
    Jetzt habe ich aber das Problem, das postgres und ich als user keine Schreibberechtigung zu haben scheine
    Code:
    postgres=# CREATE TABLESPACE digit OWNER torsten LOCATION '/Daten/pgsql/data'
    ;
    FEHLER:  konnte Zugriffsrechte für Verzeichnis »/Daten/pgsql/data« nicht setzen: Die Operation ist nicht erlaubt
    Der Ordner /Daten gehört aber mir als user. Zu welcher Gruppe gehört postgres und die postgresql-user per default auf einem debian?
    Was ist grundsätzlich noch zu beachten wenn ich auf einem Speichermedium schreib- und lesezugriff als postgresuser haben will?
    Danke
    Torsten
    Es muß dem gehören, der den Server-Prozeß laufen läßt: postgres, sowohl user als auch group.

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  10. #10
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.056

    Standard

    Ich muss mich hier mal einmischen: deine Probleme sind nur sehr bedingt auf PostgreSQL basierend. Du solltest schon wissen, wie man mit einem Unix-System umgeht, bevor du dich an dessen Nutzung (in dem Fall PostgreSQL) wagst.

    All die Fehler, die du bisher hattest sind Probleme der Systemadministration, nicht der Datenbank.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 10.01.2011, 10:26
  2. Instanz, Cluster oder Tablespace ?
    Von karl_ha im Forum Konfiguration
    Antworten: 14
    Letzter Beitrag: 15.07.2010, 11:45
  3. Restore eines gesamten DB-Clusters
    Von karl_ha im Forum SQL
    Antworten: 6
    Letzter Beitrag: 25.05.2010, 11:58
  4. Frage Datenbank Dateien auf Netzlauferk verschieben!?
    Von dorfsheriff im Forum Konfiguration
    Antworten: 9
    Letzter Beitrag: 30.12.2009, 15:30
  5. Datenbank-Cluster oder ähnl.
    Von alexander_ro im Forum Allgemeines
    Antworten: 56
    Letzter Beitrag: 06.06.2007, 05:24

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum