编译安装PostgreSQL-9.5.3数据库
-
-
- 编译安装PostgreSQL-953数据库
- 安装准备工作
- 编译安装
- 配置
- 初始化数据库蔟
- 安装contrib目录下的工具
- PostgreSQL的简单配置
- 启动和停止数据库
安装准备工作
- 首先,下载源代码,源代码的下载地址为:https://www.postgresql.org/ftp/source/ ,在此页面选择合适的发行版,但是不要下载测试版本的数据库,不稳定或者可能存在没有修复的bug。
- 接着,创建一个postgres用户,并将其添加到超级用户中
$ useradd -m postgres -G root -s /bin/bash
$ passwd postgres
$ visudo
$ sudo yum update
编译安装
下面所有的操作都在postgres用户下执行
- 解压安装包 tar -xzvf postgresql-9.5.3.tar.gz
- 进入解压后的postgres目录
- 编译
$ ./configure
$ make
$ sudo make install
$ cd /usr/local
$ sudo ln -sf /usr/local/pgsql9.5.3 /usr/local/pgsql
配置
将下面的内容加到~/.bashrc中
$ PATH=$PATH:/usr/local/pgsql/bin
$ export LD_LIBRARY_PATH=/usr/local/pgsql/lib
$ source ~/.bashrc
$ cd /home/postgres
$ mkdir pgdata
$ sudo vim ~/.bashrc
将下面的环境变量导入~/.bashrc中
$ export PGDATA=/home/postgres/pgdata
初始化数据库蔟
$ initdb
安装contrib目录下的工具
在postgresql-9.5.3目录下游contrib,进入安装即可。
PostgreSQL的简单配置
由于没有对PostgreSQL进行配置,所以会导致报错:could not create lock file “/var/run/postgresql/.s.PGSQL.5432.lock”: Permission denied ,并且由于防火墙规则导致不能正确的执行,需要执行下面的过程。
- 首先pg数据库的数据文件,在其中有一个postgresql.conf文件中修改下面的内容
$ sudo vim postgresql.conf
将该文件中的以下几个参数进行修改:
listen-addresses='*' #默认情况下是localhost,但是其它的主机不能远程登陆到该数据库,最简单的办法是设置为*,这样其它的主机就能访问该数据库
port=5432 #将端口改为5432
logging_collector = on #日志的收集一般是要打开的,所以需要将其设置为on
log_directory='pg_log'
log_filename = 'postgresql-%Y-%m-%d_%H%%M%S.log' #下面的代码都是为了每天生成一个新的日志文件
log_truncate_on_rotation = off
log_rotation_age = 1d
log_rotation_size = 0
- 接着在iptables中将5432端口释放,在/etc/sysconfig/iptables中写入下面的内容:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5432 -j ACCEPT
启动和停止数据库
$ pg_ctl -D 数据目录 start/stop
$ psql
启动之后出现下面的界面: