无法在 Mac OS X 上为 geodjango 创建空间数据库



我正在尝试为MacOS X安装PostGIS,直到现在这就是我得到的

PostGIS is now configured for x86_64-apple-darwin10.8.0
 -------------- Compiler Info ------------- 
  C compiler:           gcc -g -O2
  C++ compiler:         g++ -g -O2
 -------------- Dependencies -------------- 
  GEOS config:          /usr/local/bin/geos-config
  GEOS version:         3.3.3
  PostgreSQL config:    /usr/local/pgsql/bin/pg_config
  PostgreSQL version:   PostgreSQL 9.1.3
  PROJ4 version:        48
  Libxml2 config:       /usr/bin/xml2-config
  Libxml2 version:      2.7.3
  JSON-C support:       yes
  PostGIS debug level:  0
  Perl:                 /usr/bin/perl
 --------------- Extensions --------------- 
  PostGIS Raster:       disabled
  PostGIS Topology:     enabled
 -------- Documentation Generation -------- 
  xsltproc:             /usr/bin/xsltproc
  xsl style sheets:     
  dblatex:              
  convert:              
  mathml2.dtd:          http://www.w3.org/Math/DTD/mathml2/mathml2.dtd

这是否意味着现在已安装 PostGIS?为什么禁用后地理信息系统栅格?

同样,当我按照教程进行操作时,我收到此错误

createdb -E UTF8 template_postgis
createdb: could not connect to database postgres: FATAL:  role "root" does not exist

然后我检查了命令

sudo su - postgres

它返回 1 表示echo $?

这意味着 PostGIS 已配置,如第一行所述。

通常,您继续进行makemake install。完成此操作后,您将准备好 PostGIS 库,但您必须在数据库级别创建 PostGIS 支持函数,如下所示: psql -c spatial_ref_sys.sql

我建议也查阅官方文档。

您的错误消息意味着您正在尝试与用户一起连接到数据库/连接到那里不存在的数据库。默认情况下,PostgreSQL 工具将尝试与您当前的 unix 用户匹配的用户名/数据库,这似乎是root

请记住,在root帐户下工作是一种非常糟糕的做法。