Also laut Handbuch bezieht sich der default_tablespace nur auf Tabellen und Indexe:
Zitat von The fine manual
Hallo zusammen,
ich habe gerade auf einem Testsystem (8.4.5, konfiguriert nach der Schnellanleitung) versucht, einer Rolle einen default_tablespace zuzuweisen, in der Hoffnung, dass, wenn die Rolle eine Datenbank anlegt, diese im angegeben Tablespace erstellt wird. Das funktioniert aber leider nicht.
Code:CREATE ROLE user1 LOGIN ENCRYPTED PASSWORD 'md57d1b5a4329b6478e976508ab9a49ee3d' NOSUPERUSER NOINHERIT CREATEDB CREATEROLE; ALTER ROLE user1 SET default_tablespace='tablespace_user1';Gebe ich über die Konsole nun folgenden Befehl einCode:CREATE TABLESPACE tablespace_user1 OWNER user1 LOCATION '/home/postgres/user1';
so wird die Datenbank in pg_default erstellt. Heraus kam nämlich (so zeigt es pgAdmin):Code:create database test;
Gebe ich den Tablespace explizit mit seinem Namen an, dann wird die Datenbank auch dort erstellt:Code:CREATE DATABASE test WITH OWNER = user1 ENCODING = 'UTF8' TABLESPACE = pg_default LC_COLLATE = 'de_DE.UTF-8' LC_CTYPE = 'de_DE.UTF-8' CONNECTION LIMIT = -1;
Code:create database test2 with tablespace=tablespace_user1;Was habe ich falsch gemacht?Code:CREATE DATABASE test2 WITH OWNER = user1 ENCODING = 'UTF8' TABLESPACE = tablespace_user1 LC_COLLATE = 'de_DE.UTF-8' LC_CTYPE = 'de_DE.UTF-8' CONNECTION LIMIT = -1;
Gruß Patrick
Geändert von serverfreak1982 (26.11.2010 um 22:45 Uhr)
Webhosting? Domains? => Westenberg + Küppers GbR
Also laut Handbuch bezieht sich der default_tablespace nur auf Tabellen und Indexe:
Zitat von The fine manual
A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'
Nach etwas Recherche:
CREATE DATABASE kopiert keine Einstellungen aus der aktuellen Datenbank.
Du könntest allerdings template1 (oder deine Template Datenbank überhaupt) auf den neuen Tablespace legen.
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
Da wir hier bei einer Open Source Datenbank sind, steht das jetzt auch in der Dokumentation:
git.postgresql.org Git - postgresql.git/commitdiff
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
Links: Tobias Bauer - IT- und Funkdienstleistungen - Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen - Funkforum
Lesezeichen