postgresql 安装

310 阅读2分钟

postgresql 读音 POSTGIS中的空间查询

从CentOS仓储安装

1
直接通过仓储安装:
sudo yum install postgresql-server postgresql-contrib
2
初始化数据库,启动PostgreSQL:
sudo postgresql-setup initdb
sudo systemctl start postgresql
3
将PostgreSQL加入Systemd中:
sudo systemctl enable postgresql

配置用户信息、数据库

默认地,PostgreSQL为Linux创建了一个无home目录的用户postgres,用于访问数据库软件目录。

小心:
这个postgres用户不应该用于其它目的(例如,连接其它网络)。这样会给数据库安全带来风险。

更改postgres密码:
1
sudo passwd postgres
下面方式是更改postgres数据库用户密码。确保使用的newpassword是强类型密码:
2
PostgreSQL会自动创建postgres用户, 创建数据库之前, 要用postgres用户或root用户登录并重置postgres用户密码.
su -l postgres

连接数据库, psql命令会激活PostgreSQL数据库终端:
psql

重置postgres用户密码:
postgres=# \password

退出命令:
\q  
退出命令:
exit

注意这里的postgres用户不同于Linux的那个postgres用户。Linux的postgres是用于访问数据库,这个PostgreSQL用户是负责该数据库的管理任务处理。

开启远程连接 :

1)修改 /var/lib/pgsql/data/pg_hba.conf(默认)或者数据库目录下的pg_hba.conf
新增一行如下:

host   all             all             0.0.0.0/0               md5

2)修改修改 /var/lib/pgsql/data/postgresql.conf(默认)或者数据库目录下的postgresql.conf
3)找到 listen_addresses = ‘127.0.0.1’  去掉注释修改为 listen_addresses = ‘*’
4)port = 5432				 (change requires restart)  去掉注释打开端口
5)  重启 sudo systemctl restart postgresql
6)  查看postgresql状态:sudo systemctl status postgresql

####安装PostGIS

PostGIS可以由CentOS仓储安装:

sudo yum -y install postgis.x86_64 postgis-client.x86_64 postgis-debuginfo.x86_64 postgis-devel.x86_64 postgis-docs.x86_64 postgis-utils.x86_64

postgresql 数据库生成插件:postgis

create extension postgis ;

参考1

参考2

错误:

ERROR: database "databasename" is being accessed by other users DETAIL: There are 2 other sessions using the database.

解决:

select pid from pg_stat_activity where DATNAME = 'databasename'; 

服务端
进入postgresql 

su -l postgres
psql
postgres-# \q
-bash-4.2$ kill 6688

PostGreSQL基本操作 postgresql 常用命令 用户、权限