我尝试在自定义表空间中创建数据库和表格,而不是' pg_default'表空间用于表。这是一个例子:
mkdir /data
chown postgres /data
CREATE TABLESPACE mytspace OWNER postgres LOCATION '/data';
CREATE DATABASE mydb WITH OWNER = postgres ENCODING = 'UTF8' LC_COLLATE = 'ru_RU.utf8' LC_CTYPE = 'ru_RU.utf8' TABLESPACE = mytspace CONNECTION LIMIT = -1;
CREATE TABLE foo(i int) TABLESPACE mytspace;
psql' s \db
命令显示已创建表空间
List of tablespaces
Name | Owner | Location
------------+----------+---------------
mytspace | postgres | /data
pg_default | postgres |
pg_global | postgres |
(3 rows)
在适当的表空间中创建的数据库。这是我在pgAdmin中看到的SQL:
CREATE DATABASE mydb
WITH
OWNER = postgres
ENCODING = 'UTF8'
LC_COLLATE = 'ru_RU.utf8'
LC_CTYPE = 'ru_RU.utf8'
TABLESPACE = mytspace
CONNECTION LIMIT = -1;
但在' pg_default"中创建的表格表
CREATE TABLE foo
(
i integer
)
WITH (
OIDS = FALSE
)
TABLESPACE pg_default;
我应该怎么做才能创造一个' foo'表格在' mytspace'表
答案 0 :(得分:0)
似乎是 pgAdmin 4 v 1.0 中的错误。 GUI和SQL源为创建的表显示错误的表空间,但为创建的数据库显示正确的表空间。 pgAdmin 3 v 1.22.1 正确显示所有内容。