Linux环境安装PostgreSQL-10.1
转载自:https://www.cnblogs.com/LinBug/p/8082790.html
Linux环境安装PostgreSQL-10.1
环境及资源
- Linux版本:CentOS release 6.5
- PostgresSQL版本:postgresql-10.1
- PostgreSQL官网下载地址:https://www.postgresql.org/ftp/source/v10.1/
- 参考文档:推荐看英文文档
1)英文文档:https://www.postgresql.org/docs/10/static/install-short.html
2)中文文档:http://www.postgres.cn/docs/9.3/install-short.html
- DBeaver下载地址:https://dbeaver.jkiss.org/download/
我下载的是社区版Windows 64 bit (zip archive) (dbeaver-ce-4.3.0-win32.win32.x86_64.zip)
- DBeaver jdbc驱动下载地址:https://jdbc.postgresql.org/download.html#current
我下载的是PostgreSQL JDBC 4.2 Driver, 42.1.4
正文
安装路径为/usr/local/pgsql/
1、 解压
gunzip postgresql-10.1.tar.gz
tar xf postgresql-10.1.tar
2、 依次执行命令
* 需要的话,make可以改为gmake
- ./configure
- make
- su
- make install
- adduser postgres
- mkdir /usr/local/pgsql/data
- chown postgres /usr/local/pgsql/data
- su - postgres
- /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
- /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1&
- /usr/local/pgsql/bin/createdb test
- /usr/local/pgsql/bin/psql test
./configure是检查当前环境能否安装PG,以下是我遇到的报错和解决方案
报错1:configure: error: no acceptable C compiler found in $PATH:
解决:yum install gcc
报错2:configure: error: readline library not found
解决:yum install readline-devel
3、 启动或重启server
* 先确保是切换到了/pgsql/bin目录下,并且切换Linux用户postgres
- cd /usr/local/pgsql/bin/
- su – postgres
即
启动server:
- ./pg_ctl start -D /usr/local/pgsql/data
如果启动成功,显示信息如下
至此,PostgreSQL安装成功。
重启server:
- ./pg_ctl restart -D /usr/local/pgsql/data
如果重启成功,显示信息如下
4、 新建数据库和可以登录数据库的用户密码
* 确保是在/usr/local/pgsql/bin/目录下
创建数据库:
- ./createdb mydb
创建用户(如用户名为lin,密码为LinBug)有两种方式,
1) CREATE USER或CREATE ROLE:CREATE USER是CREATE ROLE的一个别名。 唯一的区别是CREATE USER命令缺省是LOGIN, 而CREATE ROLE命令缺省是NOLOGIN。
先进入默认的postgres数据库:
- ./psql
然后执行:
- CREATE USER lin WITH PASSWORD 'LinBug';
创建成功提示如下
2) pg封装的命令方式:
- ./createuser -P lin
这会提示你输入新建用户的密码,重复输入密码后,创建成功
5、访问数据库
* 确保在/usr/local/pgsql/bin/目录下,
以默认用户名访问默认数据库(默认的用户名和数据库名都是postgres):
- ./psql
于是进入PG的交互终端psql
以名为lin的角色登录名为mydb的数据库:
- ./psql mydb -U lin
可以看出,当psql终端的提示符为=#时,表示当前登录的是超级用户,而当提示符为=>时则为普通用户
6、远程访问数据库设置
* 远程访问数据库的认证方式主要有很多方式,我只设置基于TCP/IP连接的trust认证方式
需设置两个配置文件,
1)修改配置文件postgresql.conf,
- vim /usr/local/pgsql/data/postgresql.conf
修改监听地址:
- #listen_addresses=’localhost’#将上面这行改成如下listen_addresses=’*’
2)修改配置文件/pgsql/data/pg_hba.conf:
- vim /usr/local/pgsql/data/pg_hba.conf
添加一条IP授权记录(如192.168.2.23),可以对一个网段授权
- # 这是在/pgsql/data/pg_hba.conf文件里加
- # IPv4 myhost connections:
- host all all 192.168.2.0/24 trust
即
当然,可以设置所有网段IP可以访问:
- # 这是在/pgsql/data/pg_hba.conf文件里加
- # IPv4 remote address connections:
- host all all 0.0.0.0/0 trust
即
设置完需要重启数据库才能生效。
7、Windows图形化工具DBeaver客户端访问PG
* 就像很多公司用PL/SQL Developer、Toad来管理Oracle一样,可以用Dbeaver访问PG
* Dbeaver需要指定jdbc驱动,可到https://jdbc.postgresql.org/download.html#current下载
由于前面设置的是基于TCP/IP的trust认证,所以这里也只要设置如下参数就可:
Host:搭建PG的主机ip地址,这里我把自己的主机IP码掉啦
Port:默认为5432,如果没有特意去配置里改动,这个端口一般都是5432
Database:就是我们前面建立的数据库mydb
User:前面创建的用户名lin
Password:用户名对应的密码LinBug
点击“测试链接”,如下表示连接成功。然后再一路点击“next”
至此,我们就可以愉快地在本地管理搭建在远程Linux机器上的PostgreSQL数据库啦!
Linux环境安装PostgreSQL-10.1的更多相关文章
- Ubuntu下编译安装postgreSQL 10.5
Ubuntu下编译安装postgreSQL 10.5 ubuntu 16.04 LTS系统postgreSQL 10.5 安装包准备 1.从PostgreSQL官网下载PostgreSQL的安装包 安 ...
- Linux环境安装.NET运行环境
Linux环境安装.NET运行环境 Linux环境安装.NET运行环境 1. 构建编译环境: (1) sudo apt-get install build-essential (2) sudo apt ...
- 在CentOS 7 / RHEL 7安装PostgreSQL 10
CentOS 到了7.x版本, PostgreSQL也来到了10.x版本. 前些天MySQL都直接跨到了8.0版本. 本文是一篇在CentOS 7.4上安装安装PostgreSQL 10.3 的教程. ...
- Linux 环境安装 Node、nginx、docker、vsftpd、gitlab
Linux 环境安装 centos7 # 更新yum yum update -y 0. 防火墙 firewalld 新入的JD云服务器,发现防火墙默认是关闭的. # 查看防火墙状态 systemctl ...
- 在Linux环境安装redis步骤,且设置开机自动启动redis
最近在linux环境安装了redis学习,目前已经安装成功且设置开机即启动状态,我把步骤流程记录了下来,分享给需要的小伙伴. 1.我在/usr/local/localsoftware/目录下创建了一个 ...
- Linux下安装PostgreSQL 转载linux社区
Linux下安装PostgreSQL [日期:2016-12-25] 来源:Linux社区 作者:xiaojian [字体:大 中 小] 在Linux下安装PostgreSQL有二进制格式安装和 ...
- Linux环境安装Nexus
Linux环境安装Nexus Nexus可以做Maven私服,私服不是Maven的核心概念,它仅仅是一种衍生出来的特殊的Maven仓库.有三种专门的Maven仓库管理软件可以用来帮助大家建立私服: N ...
- Linux环境安装xmapp(PHP-Mysql集成环境)
xmapp是很多初学者使用的PHP环境集成包,用yum在linux安装的php和mysql版本现在都很低,xmapp可以解决这个问题,下面我们直接进入正题,安装一个php集成环境. 我使用的是vm虚拟 ...
- 通过xshell在linux上安装solr4.10.3
通过xshell在linux上安装solr4.10.3 0)下载linux下的安装包 1)通过xftp6上传到linux上 3)在xshell下依次执行 解压命令:tar xvfz solr.tgz( ...
随机推荐
- word常用功能
1. 安装office2013 cn_office_professional_plus_2013_x86_dvd_1134005 密钥激活 (1)用专用软件彻底卸载原来的 (2)安装 (3)用暴风激活 ...
- jQuery对标签select优化:实现模糊搜索查询功能
由于select标签中的option条数较多,翻页查询比较麻烦,需要对select标签进行优化,解决方法是通过增加模糊查询功能来提高用户体验感. 优化后的界面如下: 在实现这个优化的过程中,参考了两个 ...
- Wincc用户登录VBS脚本
在Wincc中为防止未知用户的误操作,在操作性按钮以及图符等设备操作面板,在组流程图时,需设置用户权限,只有符合权限的用户才可以进行操作.所以在流程图界面需设置系统用户登录界面.登录操作可以选择按钮或 ...
- java中double和float精度丢失问题及解决方法
在讨论两位double数0.2和0.3相加时,毫无疑问他们相加的结果是0.5.但是问题总是如此吗? 下面我们让下面两个doubles数相加,然后看看输出结果: @Test public void te ...
- string转数组, 数组转ist, list转数组, 数组转string
private string OrderBonds(string bonds) { string[] lists = bonds.Split(','); List<string> newL ...
- Jquery("#form_content").validationEngine()失效原因分析
使用validationEngine()函数对表单进行各种校验,由于多个页面都引用了相关js文件,后面子页面的validationEngine()始终不生效:....: 测试后发现重复引用了JQuer ...
- input框输入完回车即可查询事件
简单有效的方法,随笔记录一下在html设置id <input id="search_sim" type="text" class="form-c ...
- c函数 文件名通配符
static bool IsMatched(CONST TCHAR* p, CONST TCHAR* q) { CONST TCHAR *r, *z, *x = _T(""); f ...
- kolla-ansible配置cinder 的ceph的多种后端存储池【转】
在实际的使用中,openstack后端采用ceph存储,存储磁盘类型有SATA和SSD,这里如果想基于存储驱动器提供多种云硬盘类型,可以基于下面的配置完成 点击查看配置详情
- Jmeter的Body Data里输入中文时乱码
apache-jmeter-3.0\bin目录下, 用Notepad工具打开jmeter.properties文件 把#jsyntaxtextarea.font.family=Hack的前面的#号去掉 ...