Linux(CentOS 7)下安装postgres
事情背景:需要在Linux上安装postgres数据库,但安装目录想直接指定,所以想通过源码编译安装pg
首先下载源码安装包。源码下载地址:https://github.com/postgres/postgres/releases
本人下载的版本是postgres-REL_10_9.tar.gz
用下面命令切换root用户进行操作:
sudo -i
(1)将安装包上传到Linux服务器
(2)解压源码压缩文件
tar -xvfz postgres-REL_10_9.tar.gz
(3)编译前的配置。
cd postgres-REL_10_9
./configure
(4)正式编译
make
在这个过程中,会遇到各种依赖缺失而报错,通过yum install *** 进行安装即可。
(5)安装
make install
(6)创建系统pg用户,并设置密码
adduser postgres
passwd postgres
(7)创建数据库数据存放的文件夹
mkdir /usr/local/pgsql/data
(8)授权数据文件夹给postgres用户
chown postgres /usr/local/pgsql/data
(9)环境变量配置
vi .bash_profile
添加PGDATA、PATH等,如下:
export PGDATA=/usr/local/pgsql/data
export PG_HOME=/usr/local/pgsql
export LD_LIBRARY_PATH=/usr/local/pgsql/lib:$LID_LIBRARY_PATH
export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$PG_HOME/bin
(10)重启配置
source .bash_porfile
(11)初始化数据库
initdb -D /usr/local/pgsql/data #有配置PGDATA环境的换直接initdb即可
(10)启动postgres service 服务
pg_ctl start -D /usr/local/pgsql/data/ -l /usr/local/pgsql/data/logfile
(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的安装
Linux(CentOS 7)下安装postgres的更多相关文章
- Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因
原文:Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因 今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.4.6), ...
- linux(centos)环境下安装rabbitMq
1.由于rabbitMq是用Erlang语言写的,因此要先安装Erlang环境 下载Erlang :http://www.rabbitmq.com/releases/erlang/erlang-19. ...
- Linux Centos平台下安装Nginx
以home下安装为例,切换到home目录下 cd /home 安装依赖 nginx相关依赖 yum -y install make gcc gcc-c++ openssl openssl-devel ...
- linux centos 7 下安装ElasticSearch5.4
一. 把elasticsearch-5.4.0.rpm和kibana-5.4.0-x86_64.rpm上传到centos下/root目录中,如下图:二.进入centos目录/root,并用命令rpm ...
- [linux]CentOS 7 下安装 RabbitMQ
简介 RabbitMQ 是实现了高级消息队列协议(AMQP)的开源消息代理软件.RabbitMQ 服务器是用 Erlang 语言编写的,所以下面要安装 RabbitMQ 需要安装 Erlang. 一. ...
- Linux(Centos 7)下安装Git并配置连接GitHub
1.安装git Centos7 查看git --version 2.配置用户名密码 git config --global user.name "xxx" git config ...
- Linux centos7环境下安装JDK的步骤详解
Linux centos7环境下安装JDK的步骤详解 测试root用户下JAVA版本 输入命令: java –version 1.先到Oracle官网里下载好jdk,网址如下: http://ww ...
- Linux CentOS 7 下 Apache Tomcat 7 安装与配置
前言 记录一下Linux CentOS 7安装Tomcat7的完整步骤. 下载 首先需要下载tomcat7的安装文件,地址如下: http://mirror.bit.edu.cn/apache/tom ...
- Centos 7(Linux)环境下安装PHP(编译添加)相应动态扩展模块so(以openssl.so为例)
https://blog.csdn.net/shinesun001/article/details/54312402 在centos 7环境下搭建好Lnmp环境之后,发现安装的php有好多扩展都没有安 ...
- centos / Linux 服务环境下安装 Redis 5.0.3
原文:centos / Linux 服务环境下安装 Redis 5.0.3 1.首先进入你要安装的目录 cd /usr/local 2.下载目前最新稳定版本 Redis 5.0.3 wget http ...
随机推荐
- python #!/usr/bin/python 的作用
在说之前,这里推荐写: #!/usr/bin/env python 进入正题,在 Python 里面第一行代码: #!/usr/bin/python 其他有的可能是 python2 或者 python ...
- 二分算法题目训练(四)——Robin Hood详解
codeforces672D——Robin Hood详解 Robin Hood 问题描述(google翻译) 我们都知道罗宾汉令人印象深刻的故事.罗宾汉利用他的射箭技巧和他的智慧从富人那里偷钱,然后把 ...
- 在docker容器中编译hadoop 3.1.0
在docker容器中编译hadoop 3.1.0 优点:docker安装好之后可以一键部署编译环境,不用担心各种库不兼容等问题,编译失败率低. Hadoop 3.1.0 的源代码目录下有一个 `sta ...
- 新的log4j2.xml
<?xml version="1.0" encoding="UTF-8"?> <!-- OFF < FATAL < ERROR & ...
- 同一个类里@Cacheable缓存不起作用
问题原因: 注解@Cacheable是使用AOP代理实现的 ,通过创建内部类来代理缓存方法,类内部的方法调用类内部的缓存方法不会走代理,所以就不能正常创建缓存,所以每次都需要去调用数据库. 解决方法: ...
- mysql的select语句
参考: https://www.cnblogs.com/xiaoshen666/p/10824117.html https://www.cnblogs.com/zouwangblog/archive/ ...
- mac使用xposed超详细入门级教程Android Studio-20190930
工具 这里我使用的工具是Android Studio3.4.1,电脑环境mac os mojave 10.14.6(这个应该问题不大) 创建项目 1.打开Android Studio,看到这个界面,并 ...
- 20175313 张黎仙《Java综合讲座》第十三周课堂测试总结
目录 一.JAVA中两大类型 二.基本类型与类类型的相互转化 三.int与Integer之间的区别 四.String.StringBuffer.StringBuilder三者之间的区别 五.Array ...
- 代码检查p626
1 编译运行p626 图10-3代码,提交编译运行的截图 2 STDOUT_FILENO的值是多少?提交在Ubuntu中查找这个值的命令截图
- JavaScript中三个等号和两个等号的区别(“===”与“==”的区别)
1.===:三个等号我们称为等同符,当等号两边的值为相同类型的时候,直接比较等号两边的值,值相同则返回true,若等号两边的值类型不同时直接返回false. 例:100===“100” //返回f ...