Unterschiede zwischen den Revisionen 12 und 13
Revision 12 vom 2010-05-09 10:57:58
Größe: 4665
Autor: anonym
Kommentar: unicode howto verlinkt
Revision 13 vom 2011-02-02 20:17:26
Größe: 4656
Autor: anonym
Kommentar:
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 1: Zeile 1:
DISCLAIMER: Das ist und wird kein Tutorial oder richtiges Howto, es ist eher sowas wie eine Merkhilfe für den Autoren.  DISCLAIMER: Das ist und wird kein Tutorial oder richtiges Howto, es ist eher sowas wie eine Merkhilfe für den Autoren.
Zeile 10: Zeile 10:
Zeile 18: Zeile 17:
  * aus: {{{   * aus:
 
{{{
Zeile 25: Zeile 25:


* wird: {{{
  * wird:
 
{{{
Zeile 34: Zeile 33:
Zeile 39: Zeile 37:
Zeile 45: Zeile 42:
Zeile 48: Zeile 44:
 * so eine {{{/etc/odbcinst.ini}}} erstellen: {{{  * so eine {{{/etc/odbcinst.ini}}} erstellen:
{{{
Zeile 57: Zeile 54:
 * so eine {{{/etc/odbc.ini}}} erstellen: {{{  * so eine {{{/etc/odbc.ini}}} erstellen:
{{{
Zeile 77: Zeile 75:

Zeile 87: Zeile 83:

DISCLAIMER: Das ist und wird kein Tutorial oder richtiges Howto, es ist eher sowas wie eine Merkhilfe für den Autoren.

Benutztes System: Debian GNU/Linux. Benutzte Postgres-Version: 7.4.

Die Sachen, die im Folgenden aus komplett grossgeschriebenen Worten bestehen (CREATE USER und sowas) sind SQL-Befehle. Meist ist nur eine von vielen Varianten angegeben (CREATE USER hat z.B. viele hier ungenannte Parameter). Zur Referenz empfehle ich einfach irgendein SQL-Buch.

Installation

  • apt-get install postgresql

  • ((Dinge, die ich vergessen habe. Werden eingefügt, wenn ich die Info wiederfinde bzw. nochmal installieren muss.))

Eine Datenbank einrichten

  • user postgres werden (als root su postgres)

  • standard-tempalte auf unicode umstellen, siehe http://wiki.archlinux.org/index.php/PostgreSQL#Change_Default_Encoding_of_New_Databases_To_UTF-8_.28Optional.29

  • template1 ist die default-Datenbank zur Administration aller anderen Datenbanken. Darum eingebena(als postgres): psql template1

  • dann im Prompt CREATE DATABASE irgendeinname ; eingeben, wobei irgendeinname durch irgendeinen Namen ersetzt werden kann. Semikolon beachten

  • um die jetzt bestehende Datenbank zu connecten, einfach \c irgendeinname eingeben.

  • defaultmaessig steht in der Zugriffs-Config-Datei /etc/postgresql/7.4/main/pg_hba.conf drin, dass lokale Zugriffe per ident-System authentifiziert werden. Folgende Änderungen der Datei ändern dies auf eine Passwort-Abfrage des Datenbank-Users, der nachher eingerichtet wird:

    • aus:
      # All other connections by UNIX sockets
      local   all         all                                             ident sameuser
      #
      # All IPv4 connections from localhost
      host    all         all         127.0.0.1         255.255.255.255   ident sameuser
    • wird:
      # 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

Einen User in der neuen Datenbank einrichten

  • wieder mit psql in template1 einloggen
  • CREATE USER name PASSWORD 'passwort'; eingeben, wobei name und passwort ersetzt werden sollten

  • ALTER USER name CREATEUSER; macht nen superuser aus dem erstellten user.

Backup und Restore einer Datenbank

  • auf den Rechner einloggen und postgres werden
  • Backup: pg_dumpall > db.out

  • Restore: psql -f db.out template1

  • db.out kann natürlich beliebig benannt werden.

ODBC Schnittstelle an die Datenbank ran

  • apt-get install odbc-postgresql unixodbc

  • so eine /etc/odbcinst.ini erstellen:

    [PostgreSQL]
    Description     = PostgreSQL ODBC driver
    Driver          = /usr/lib/odbc/psqlodbc.so
    Setup           = /usr/lib/odbc/libodbcpsqlS.so
    Debug           = 0
    CommLog         = 1
    FileUsage       = 1
  • so eine /etc/odbc.ini erstellen:

    [PostgreSQL irgendeinname]
    Description         = PostgreSQL irgendeinname
    Driver              = PostgreSQL
    Trace               = No
    TraceFile           = /tmp/psqlodbc.log
    Database            = irgendeinname
    Servername          = localhost
    UserName            = username
    Password            = passwort
    Port                = 5432
    Protocol            = 6.4
    ReadOnly            = No
    RowVersioning       = No
    ShowSystemTables    = No
    ShowOidColumn       = No
    FakeOidIndex        = No
    ConnSettings        =
  • jetzt muesste  isql -vv 'PostgreSQL irgendeinname' username klappen.

Mit PGAdmin eine Datenbank verwalten

Datenbank zur Liste hinzufügen

  • erstmal apt-get install pgadmin3 und starten

  • File - Add Server - ...
    • Address ist in diesem Beispiel 127.0.0.1, ansonsten muss entsprechend oben auch die Zugriffsteuerung angepasst werden

    • Initial DB ist hier irgendeinname.

      • Kann sein, dass mit template1 und User postgres auch die Erstellung neuer Datenbanken moeglich ist. Ungetestet.

    • Username und Passwort auch wie oben.

Mit Openoffice auf eine Datenbank zugreifen

  • Openoffice nutzt odbc, um auf die Datenbank zuzugreifen, also muss die Datenbank den entsprechenden Treiber eingerichtet haben (s.o.).
  • apt-get install openoffice.org

  • neues Dokument öffnen
  • Tools - Data Sources... anklicken. Hier irgendeinen Namen ausdenken, als Typ odbc auswählen, auf ... klicken und die oben erstellte Datenbank auswählen. Bei den anderen Karteireitern können noch einzelne Tabellen ausgewählt werden usw.

PostgresqlStichpunkte (zuletzt geändert am 2012-06-13 21:26:25 durch anonym)


Creative Commons Lizenzvertrag
This page is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.