返回顶部

我的蜡笔丢了

  博客园  :: 首页  :: 新随笔  ::  :: 订阅 订阅  :: 管理

事情背景:需要在Linux上安装postgres数据库,但安装目录想直接指定,所以想通过源码编译安装pg

首先下载源码安装包。源码下载地址:https://github.com/postgres/postgres/releases

本人下载的版本是postgres-REL_12_3.tar.gz

由于涉及到编译安装,需要使用到root用户的权限,操作时确保权限足够。

用下面命令是以root用户进行操作

sudo -i

(1)将安装包上传到Linux服务器

(2)解压源码压缩文件

tar -xvfz postgres-REL_12_3.tar.gz

(3)编译前的配置。

cd postgres-REL_12_3
./configure

(4)正式编译

make

在这个过程中,会遇到各种依赖缺失而报错,通过查看对应的报错日志,通过yum install *** 进行安装即可。

在生产环境中,环境缺失各种依赖,所以根据报错安装了下面的依赖,可以参考一下  如果是离线环境的话,可以考虑用rpm包安装依赖

yum install -y gcc
yum install -y bison
yum install zlib-devel
yum install -y readline-devel
yum install -y openssl-devel
yum isntall -y flex

(5)安装

make install

(6)创建系统pg用户,并设置密码

adduser postgres
passwd postgres

(7)创建数据库数据存放的文件夹 文件夹可以自定义,生产环境很多都是下面的路径,不影响后续操作

mkdir /usr/local/pgsql/data 

(8)授权数据文件夹给postgres用户

chown -R postgres:postgres /usr/local/pgsql/data 

(9)初始化数据库  -D 后面是你指定的数据文件夹所在位置

/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data #有配置PGDATA环境的换直接initdb即可

(10)启动postgres service 服务

/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data/ -l /usr/local/pgsql/data/logfile start 

-------------------------

这里算是安装好数据库了

下面是测试

(11)创建第一个数据库

createdb test 

(12)使用psql工具连接进入到数据库操作命令行 

psql test 

(13)设置sql语句执行的上下文(即针对哪一个Schema操作) 

set search_path to public 

(14)创建测试表

create table test(id int primary key,name varchar(50) not null);
insert into test(id,name) values(1,'小明');
insert into test(id,name) values(2,'小红');

(15)查看表记录

select * from test;

以上就安装好pgsql数据库了。

开机服务配置:将下载的postgres安装包postgres-REL_10_9里的contrib/start-scripts路径下的liunx文件复制到 /etc/init.d/目录下

(1)切换到root用户

sudo -i

(2)将安装包里的linux文件复制到  /etc/init.d/目录下,重命名为postgresql.   

cp /tmp/postgres-REL_10_9/contrib/start-scripts/linux /etc/init.d/postgresql #我的pgsql的安装包是放在/tmp/目录下的

(3)修改/etc/init.d/postgresql文件的两个变量

vi /etc/init.d/postgresql

这是默认的路径,如果不一致则修改。prefix=数据库的安装路径  PGDATA=数据库数据的路径

(4)启动postgresql服务

service postgresql start
service postgresql status #查看postgresql服务状态

(5)设置postgresql服务开机自启动

chkconfig --add postgresql

这样就完成了postgres的安装

posted on 2019-08-02 18:56  我的蜡笔丢了  阅读(686)  评论(0编辑  收藏  举报