基于CentOS7开发之路 --- 第四章 :CentOS 7 安装 postgresql 9.5.0 数据库

大多数刚出来工作的程序猿,接触的比较多都是MySQL数据库,就像我,刚出来工作的时候,都不知道还有postgresql这个数据库····

一、安装:

以下操作需要先切换到root用户

1.创建数据库用户

useradd postgres  #添加postgresql数据库用户
passwd postgres   #设置数据库用户密码
2.解压安装

cp postgresql-9.5.0.tar.gz postgresql-9.5.0.tar.bz2 /mnt/temp/  #将安装文件复制到临时目录
mkdir database/postgresql/pg -p   #创建安装目录
cd /mnt/temp/   #切换到压缩包所在目录
tar -zxvf postgresql-9.5.0.tar.gz postgresql-9.5.0.tar.gz  #解压安装包
cd /mnt/temp/postgresql-9.5.0  #切换到解压后的目录
./configure --prefix=/database/postgresql/pg/  #校验系统环境
make  #执行编译,若提示All of PostgreSQL successfully made. Ready to install.则继续下一步
make install  #执行安装,若提示PostgreSQL installation complete.,则表示安装完成
mkdir /database/postgresql/pg/data -p  #创建保存数据的目录
chown -R postgres /database/postgresql/pg/data/  #将目录赋给数据库用户postgres
3.切换到数据库用户,并编辑环境变量

su - postgres  #切换到postgres用户
vi .bash_profile   #编辑postgres用户环境变量
       #postgresql
       #PostgresqlPort
       PGPORT=5432

       #PostgresqlData
       PGDATA=/database/postgresql/pg/data
       export PGPORT PGDATA

       #Language
       export LANG=en_US.utf8

       #PostgresqlHome
       export PGHOME=/database/postgresql/pg

       #PostgresqlConnection
       export LD_LIBRARY_PATH=$PGHOME/lib:lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/local/lib:$LD_LIBRARY_PATH
       export DATE='date+"%Y%m%d%H%M"'

       #PostgresqlCommand 将Postgresql的命令行添加到PATH环境变量
       export PATH=$PGHOME/bin:$PATH

       #Postgresql User
       export PGUSER=postgres

       #Postgresql Host
       export PGHOST=127.0.0.1

       #Postgresql database
       export PGDATABASE=postgres

       PATH=$PATH:$HOME/.local/bin:$HOME/bin

       export PATH
source .bash_profile  #使环境变量即时生效
echo $PATH  #测试环境变量是否配置正确,若出现下列信息,则说明正确
       /database/postgresql/pg/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/postgres/.local/bin:/home/postgres/bin
4.初始化数据库

/database/postgresql/pg/bin/initdb --encoding=utf-8 -D /database/postgresql/pg/data  #执行数据库初始化,初始化成功的话,和提示如下信息
       Success.You can now start the database server using:
       /database/postgresql/pg/bin/pg_ctl -D /database/postgresql/pg/data -l logfile start
       则说明安装成功,/database/postgresql/pg/bin/pg_ctl -D /database/postgresql/pg/data -l logfile start即启动方式,但是还有更简单的启动方式
  
5.完成系统配置

su - root  #切换到root用户
cp /mnt/temp/postgresql-9.5.0/contrib/start-scripts/linux /etc/init.d/postgresql  #复制启动脚本
vi /etc/init.d/postgresql  #编辑启动脚本,找到 prefix=/usr/local/pgsql和PGDATA="/usr/local/pgsql/data"这两行,分别修改为自己的目录
       prefix=/database/postgresql/pg  #自己的数据库安装目录
       PGDATA="/database/postgresql/pg/data"  #自己的数据库储存目录
chmod +x /etc/init.d/postgresql  #赋予执行权限
vi /database/postgresql/pg/data/postgresql.conf  #编辑数据库配置文件,找到 #listen_addresses = 'localhost'和 #port = 5432 分别修改为如下所示
       listen_addresses = '*'  #去掉#,并且把localhost修改为*
       port = 5432    #去掉#,默认端口为5432,若是新人,不建议修改,就默认的好了。
chkconfig postgresql on  #设置开机启动postgresql服务 


二、错误解决

1.configure: error: readline library not found
   yum install readline-devel -y

2.configure: error: zlib library not found
yum install zlib-devel -y


yum install gcc-c++ -y


yum install python-devel -y


你可能感兴趣的:(基于CentOS7开发之路)