ubantu源码安装postgresql

       最近学习postgresql数据库,直接用服务器的包管理器,版本选择处理起来很麻烦,所以查了下资料,选择用源码安装,这里做个笔记记录下(本文基于Ubantu 14.04.5),方便自己和他人,由于本人很菜,有不对的地方还往大神批评指正,谢谢!
ps:由于刚开始写博客,目前是对以前学习的只是进行一个总结性的记录,可能会涉及到一些和大神作品雷同的内容,如有,请告诉我,谢谢!

step1-安装前准备

安装依赖包

sudo apt-get install libreadline6-dev
sudo apt-get install zlib1g-dev
sudo apt-get install libssl-dev

下载源码

源码下载链接可以到官网上找就行了,
eg:https://www.postgresql.org/ftp/source/
下载后解压,安装就行了,如下:

sudo tar xf postgresql-9.5.2.tar.gz
cd postgresql-9.5.2
./configure --prefix=/usr/local/pgsql --with-pgport=5432 --with-openssl

step2-开始安装和配置

编译安装

make &&  sudo make install

安装contrib

cd contrib
make
sudo make install

添加用户和组

建立一个超级用户用于管理数据库

1.添加用户

sudo adduser postgres

2.建立数据库数据目录并授权

sudo mkdir /usr/local/pgsql/data
sudo chown -R postgres:postgres /usr/local/pgsql/data
su postgres

3.初始化数据库并启动数据库

/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data/
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &

4.将启动脚本加入到系统服务

sudo cp /usr/local/src/postgresql-9.5.2/contrib/start-scripts/linux /etc/init.d/postgresql
sudo chmod +x /etc/init.d/postgresql

5.设置为开机启动
sudo update-rc.d postgresql defaults

经过以上步骤,数据库已经安装配置完成,可以通过命令查看其运行状态


允许远程访问设置

安装PostgreSQL数据库之后,默认只能本地访问连接。如果想在其他主机上访问PostgreSQL数据库服务器,就需要进行相应的配置。需要修改data目录下的pg_hba.conf和postgresql.conf,其中pg_hba.conf是用来配置对数据库的访问权限,postgresql.conf文件用来配置PostgreSQL数据库服务器的相应的参数。步骤如下:

  1. 修改postgresql.conf文件,将数据库服务器的监听模式修改为监听所有主机发出的连接请求
    定位到#listen_addresses=‘localhost’。PostgreSQL安装完成后,默认是只接受来在本机localhost的连接请 求。将行开头都#去掉,将行内容修改为listen_addresses=’*'来允许数据库服务器监听来自任何主机的连接请求。
  2. 修改pg_hba.conf文件,配置用户的访问权限(#开头的行是注释内容):
    #TYPE DATABASE USER CIDR-ADDRESS METHOD
    #IPv4 local connections:
    host all all 127.0.0.1/32 md5
    host testdb postgres 192.1.1.2/32 md5
    以上红色部分为新添加的项。
      以上内容需要注意以下两点:
       1. 数据库名与用户名注意大小写,PostgreSQL是区分大小的;
       2. CIDR-ADDRESS(用户的IP范围)的值的格式是:IP/数值
         数值取值范围为:0,8,16,24,32 即表示掩码bit的个数;
         例如:
          32 -> 192.168.1.1/32 表示必须是来自这个IP地址的访问才合法;
          24 -> 192.168.1.0/24 表示只要来自192.168.1.0 ~ 192.168.1.255的都合法;
          16 -> 192.168.0.0/16 表示只要来自192.168.0.0 ~ 192.168.255.255的都合法;
          8 -> 192.0.0.0/16 表示只要来自192.0.0.0 ~ 192.255.255.255的都合法;
          0 -> 0.0.0.0/0 表示全部IP地址都合法,/左边的IP地址随便了只要是合法的IP地址即可;

完成上面两个配置文件的修改以后,为了让配置生效,需要重新启动PostgreSQL数据库服务器。

相关命令

查看postgresql服务

sudo service postgresql status

查看数据库进程运行状态

ps aux | grep postgres

数据库启动停止等

启动postgresql数据库
sudo /etc/init.d/postgresql start
重启postgresql数据库
sudo /etc/init.d/postgresql restart
停止postgresql数据库
sudo /etc/init.d/postgresql stop
查看postgresql数据库状态
sudo /etc/init.d/postgresql status

参考

PostgreSQL新手入门

博客同步自:个人博客主页

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值