在Mac上安装PostgreSQL和PostGIS
在macOS High Sierra上使用Homebrew进行PostgreSQL和PostGIS安装的过程中做的笔记。由于许多方面都发生了变化,所以我只能摸索着进行。
环境
-
- macOS High Sierra 10.13.6
- Homebrew 1.8.6
安装
安装PostgreSQL
> brew install postgres
安装PostGIS
> brew install postgis
在安装PostGIS时出现以下错误。
Error: An unexpected error occurred during the `brew link` step
The formula built, but is not symlinked into /usr/local
Permission denied @ dir_s_mkdir - /usr/local/Frameworks
Error: Permission denied @ dir_s_mkdir - /usr/local/Frameworks
按照以下方式进行处理后,重新安装PostGIS。
参考:使用通过Homebrew安装的Python时的链接错误问题。
> sudo mkdir /usr/local/Frameworks
> sudo chown [username]:admin /usr/local/Frameworks
安装的版本如下
-
- PostgreSQL 11.1
- PostGIS 2.5.1
创建和启动DB
可能是在安装PostgreSQL的时候,/usr/local/var/postgresql/目录下已经存在了数据库?看起来是这样的,但在删除它后,重新按照以下方式创建了数据库。
> initdb /usr/local/var/postgres -E utf8
启动服务使用brew services命令(参考PostgreSQL安装时的提示信息)。
> brew services start postgresql
暂且将postgres用户创建为超级用户。
> createuser -s postgres
创建PostGIS数据库。
> createdb -U postgres geomdb
> psql -U postgres geomdb
psql (11.1)
Type "help" for help.
geomdb=# CREATE EXTENSION postgis;
CREATE EXTENSION
geomdb=# SELECT PostGIS_Version();
postgis_version
---------------------------------------
2.5 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
(1 row)
geomdb=#
请参考
-
- PostgreSQL and PostGIS installation in Mac OS.
-
- Installing and configuring PostgreSQL on macOS (OSX)
-
- Homebrewで入れたPythonでのlinkエラー問題
- OS X に PostgreSQL を Homebrew でインストールして brew services で起動する