Ubuntu 16.04下 安装PostgreSQL 与PostGIS 与 pgAdmin3
目录
1:更新你的系统:
sudo apt-get update && sudo apt-get upgrade
安装PostgreSQL
2 :从Ubuntu软件包存储库安装PostgreSQL:
sudo apt-get install postgresql postgresql-contrib
安装(插件)PostGIS | pgrouting
sudo apt install postgresql postgresql-contrib postgis postgresql-9.5-postgis-2.2
//以下自己选择 添加扩展
psql -c "CREATE EXTENSION hstore;" -d postgres
psql -c "CREATE EXTENSION postgis;" -d postgres
psql -c "CREATE EXTENSION postgis_topology;" -d postgres
psql -c "CREATE EXTENSION postgis_tiger_geocoder;" -d postgres
psql -c "CREATE EXTENSION fuzzystrmatch;" -d postgres
sudo apt-get install postgresql-9.5-pgrouting (安装添加pgrouting)
psql -c "CREATE EXTENSION pgrouting;" -d postgres
安装pgAdminIII
sudo apt install pgadmin3
配置PostgreSQL,修改Postgres用户
默认情况下,PostgreSQL将创建一个名为postgres
访问数据库软件的Linux用户
更改postgres
用户的Linux密码:(执行以下命令后会让输入密码,这里的密码为Ubuntu 新用户的登录密码而已(此命令可重复输入修改))
这里是在Ubuntu 下添加一个新用户
sudo passwd postgres
3: 执行以下命令为postgres
数据库用户设置密码。请注意newpassword
使用强密码替换并将其保存在安全的地方。(特别注意以下 newpassword
替换为成自己链接数据库的密码
)
//先切换用户
su - postgres
//然后创建密码
psql -d template1 -c "ALTER USER postgres WITH PASSWORD 'newpassword';"
4 : 换到 postgres用户下了 (因为上面执行过 su postgres(切换用户):会让你输入 之前在Ubuntu 下给postgre 设置的那个密码 )
连接到测试数据库:
执行(必须在postgres 用户下才 能执行(之所以不能再 root下 执行 那是因为没有配置环境))
psql postgres
效果如下: 说明你已经链接到数据库了
1: 测试对数据库的操作:
CREATE TABLE test (test_id int, first_name varchar, last_name varchar);
2: 在表中插入记录:
INSERT INTO test VALUES (1, 'John', 'Doe');
3:查看“test”表的内容:
SELECT * FROM test;
效果图如下: (这里 数据库的 安装 并且测试连接已经完成了 )
这里安装完成了当我们开开心心通过代码链接的时候:
Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.(问题原因—-> 让你检查端口,说已经链接了 —-> 总之链接了被拒绝了 )
解决方案: 在/etc/postgresql/9.5/main/postgre.cof 找到 listen_addresses = ‘localhost’ 修改为 listen_addresses = ‘*’
保存退出: 重启数据库 让配置生效 :
sudo service postgresql restart
然后我们再次用JDBC 链接Ubuntu 上安装的Postgresql (出现以下错误 )
特别说明 : 如果是在Ubuntu上 连接数据库的话 是不会出现以下错误的(这里是远程链接报错 由于pg的认证导致的)
FATAL: no pg_hba.conf entry for host “192.168.0.139”, user “postgres”, database “postgres”, SSL off
解决方式: 在postgresql的 认证 配置文件中 (/etc/postgresql/9.5/main/pg_hba.conf)
这里的IP 的地址 改成 0.0.0.0/0 (这里修改之后 你就可以用本地pgAdminIII 去远程链接你的Ubuntu上的这个数据库了 ) 保存 退出
重要的事情说三遍: 特别注意最后一步,特别注意最后一步,特别注意最后一步 执行以下命令 (重启数据库 不然数据库的配置是不会生效的 )
sudo service postgresql restart
然后再次链接数据: 成功了
转载自:https://blog.csdn.net/zj3172172173/article/details/82876719