Bearbeiten von „PostGreSQL“
Zur Navigation springen
Zur Suche springen
Warnung: Du bist nicht angemeldet. Deine IP-Adresse wird bei Bearbeitungen öffentlich sichtbar. Melde dich an oder erstelle ein Benutzerkonto, damit Bearbeitungen deinem Benutzernamen zugeordnet werden.
Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und veröffentliche dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.
Aktuelle Version | Dein Text | ||
Zeile 1: | Zeile 1: | ||
[[Kategorie:DB]] | [[Kategorie:DB]] | ||
[[Kategorie:ServerApplikation]] | [[Kategorie:ServerApplikation]] | ||
= SQL-Tipps = | = SQL-Tipps = | ||
Zeile 13: | Zeile 9: | ||
alter table mytable alter table_reference type int using asset_no::integer; | alter table mytable alter table_reference type int using asset_no::integer; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== DB anlegen == | == DB anlegen == | ||
<pre>createdb dbtest | <pre>createdb dbtest | ||
</pre> | </pre> | ||
Zeile 53: | Zeile 34: | ||
\du ODER \du+ | \du ODER \du+ | ||
</pre> | </pre> | ||
== Geometry-Variante == | == Geometry-Variante == | ||
Zeile 144: | Zeile 49: | ||
CREATE EXTENSION IF NOT EXISTS plpgsql; | CREATE EXTENSION IF NOT EXISTS plpgsql; | ||
CREATE EXTENSION postgis; | CREATE EXTENSION postgis; | ||
CREATE TABLE | CREATE TABLE geodb ( | ||
id SERIAL PRIMARY KEY, | id SERIAL PRIMARY KEY, | ||
name varchar(64), | name varchar(64), | ||
geom geography(POLYGON,3857) | geom geography(POLYGON,3857) | ||
); | ); | ||
CREATE INDEX geodb_geom_idx ON geodb USING GIST (geom); | CREATE INDEX geodb_geom_idx ON geodb USING GIST (geom); | ||
select distinct(st_isvalid(geom)) from geodb; | select distinct(st_isvalid(geom)) from geodb; | ||
Zeile 162: | Zeile 64: | ||
</pre> | </pre> | ||
* Hinweis: Polygon mit 1000 Ecken erfolgreich eingetragen. | * Hinweis: Polygon mit 1000 Ecken erfolgreich eingetragen. | ||
== Abfragen der Geometry == | == Abfragen der Geometry == | ||
Zeile 177: | Zeile 73: | ||
select ST_AsText(geom) froom geodb; | select ST_AsText(geom) froom geodb; | ||
-- Display with maximal float precision of 2 (digits behind the dot) | -- Display with maximal float precision of 2 (digits behind the dot) | ||
select ST_AsText( | select ST_AsText(geom, 2) from geodb; | ||
</pre> | </pre> | ||
= Installation = | = Installation = | ||
== Debian == | == Debian == | ||
Zeile 258: | Zeile 108: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Rollen == | |||
* Eine Rolle kann als "Gruppe" oder als "Benutzer" verwendet werden. | |||
* Ein Benutzer ist eine Rolle mit Attribut LOGIN. | |||
* "CREATE USER" ist ein Alias von "CREATE ROLE" mit gesetztem "LOGIN"-Attribut. | |||
<pre> | |||
sudo -u postgres psql postgres | |||
</pre> | |||
<pre> | |||
SELECT rolname FROM pg_roles; | |||
CREATE ROLE root WITH SUPERUSER CREATEDB CREATEROLE LOGIN PASSWORD 'NoOneKnows'; | |||
CREATE ROLE dbadm WITH CREATEDB CREATEROLE LOGIN PASSWORD 'UnknownPw'; | |||
CREATE ROLE forum WITH CREATEDB LOGIN PASSWORD 'ThinkAbout'; | |||
</pre> | |||
== Ohne Admin-Passwort arbeiten (z.B. temporär) == | == Ohne Admin-Passwort arbeiten (z.B. temporär) == | ||
Zeile 263: | Zeile 126: | ||
** host all all 127.0.0.1/32 trust | ** host all all 127.0.0.1/32 trust | ||
** host all all ::1/128 trust | ** host all all ::1/128 trust | ||
== Benutzer anlegen == | |||
* pgadmin3 aufrufen | |||
** Login-Rollen: neue Rolle eintragen | |||
* SQL: | |||
** CREATE ROLE jonny LOGIN ENCRYPTED PASSWORD 'md582dfb88f80303e0d0e2ffdbdc9e82b64' SUPERUSER INHERIT CREATEDB CREATEROLE NOREPLICATION; | |||
== Passwort-Authentifizierung erlauben == | == Passwort-Authentifizierung erlauben == | ||
Zeile 305: | Zeile 174: | ||
== DB erzeugen == | == DB erzeugen == | ||
* als User hm: | * als User hm: | ||
<pre>createdb | <pre>createdb sale | ||
* oder als User postgres: | * oder als User postgres: | ||
psql | psql | ||
create database owner hm; | create database owner hm; | ||
</pre> | </pre> |