[关闭]
@code33 2017-01-10T06:16:13.000000Z 字数 2105 阅读 1183

PostgreSQL 生产安装,配置,维护(1)

技术文档 postgresql

以下配置参数与centOS6.x 下测试通过
此版本基于postgresql 9.5.0
create by jyo
code0515@gmail.com
2016-01-19


基本文件类库依赖

centOS6.5

  1. yum install -y readline-devel
  2. yum install -y zlib-devel

ubuntu

  1. apt-get install libreadline-dev
  2. apt-get install libreadline6-dev
  3. apt-get install zlib1g
  4. apt-get install zlib1g-dev

源码文件安装

迪联177局域网服务器:
/home/root/share/env/postgresql-9.5.0.tar.bz2

解压bz2包文件:

  1. tar jxf postgresql-9.5.0.tar.bz2

执行编译安装:

  1. ./configure --prefix=/opt/PostgreSQL
  2. make

当看见“All of PostgreSQL successfully made. Ready to install”时,就可以执行如下命令完成PostgreSQL服务的安装。
确认安装

  1. make install

用户管理

用户与数据目录

  1. #添加用户到db组
  2. adduser -G db postgres
  3. passwd postgres
  4. #输入 postgres 用户口令
  5. #切换到postgres用户
  6. su postgres
  7. cd ~
  8. #建立数据库文件夹
  9. mkdir ~/db
  10. #设置权限
  11. chown -R postgres /home/postgres/db
  12. chmod -R 700 /home/postgres/db

用户环境变量

如果该用户下未有此文件则需要将 ~/.bash_profile中加入

打开文件

  1. vim ~/.bash_profile
  1. #!/bin/bash
  2. # Get the aliases and functions
  3. if [ -f ~/.bashrc ]; then
  4. . ~/.bashrc
  5. fi
  6. export PGHOME=/opt/PostgreSQL
  7. export PGDATA=/home/postgres/db
  8. export PATH=$PGHOME/bin:$PATH
  9. #保存

环境变量生效

  1. source ~/.bash_profile

初始化数据库

  1. #如果是中文操作系统可以加上此地区字符集编号
  2. initdb -D /home/postgres/db --locale=zh_CN.UTF8

启动数据库

  1. pg_ctl start

创建空库

  1. createdb testdb01

连接数据库

此命令为 $PGHOME/bin下的可执行脚本

  1. psql -d testdb01

设置开机启动

进入源码目录,设置权限,拷贝文件

  1. #进入源码目录
  2. su
  3. cd /path/postgresql-source/contrib/start-scripts/
  4. chmod a+x linux
  5. cp linux /etc/init.d/postgresql

设置变量

  1. vim /etc/init.d/postgresql
  1. prefix=/opt/PostgreSQL
  2. PGDATA="/home/postgres/db"

执行服务.启动

  1. service postgresql start

执行服务.重启

  1. service postgresql restat

...更多用法 自己看脚本

添加开机自动启动

  1. chkconfig --add postgresql

启动多实例

PostgreSQL是支持多实例的,下面我们介绍启动两个实例的方法。首先新建两个数据文件目录:

  1. cd /home/postgres/db/
  2. mkdir pgdata1
  3. mkdir pgdata2
  4. chown postgres pgdata1
  5. chown postgres pgdata2

然后新建两个实例:

  1. su postgres
  2. initdb -D $PGDATA/pgdata1 --locale=zh_CN.UTF8
  3. initdb -D $PGDATA/pgdata2 --locale=zh_CN.UTF8

修改pgdata1和pgdata2目录下的postgresql.conf文件中的port参数,分别将其值设置为5433和5434,下一步就可以启动两个实例了,命令如下:

  1. pg_ctl -D $PGDATA/pgdata1 start
  2. pg_ctl -D $PGDATA/pgdata2 start

进入两个实例分别使用如下命令:

  1. psql -p 5433
  2. psql -p 5434

Linux Ubuntu客户端

添加源

  1. echo "deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main" >> /etc/apt/sources.list

下载密令

  1. wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

更新源

  1. sudo apt-get update
  2. apt-cache search postgresql-client

选择适合服务端的客户端版本 执行安装


Love your neighbor as yourself.

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注