Ubuntu16 源码方式安装postgresql数据库
依赖工具库
注意:默认用户名是postgres,以下命令是Ubuntu操作系统中的命令
make
GCC
Zlib
安装命令:sudo apt-get install zlib1g-dev
注意有些软件包的名字无法确定,可以借助ubuntu software center来确定其有效名字,
readline
安装命令:sudo apt-get install libreadline6 libreadline6-dev
注意网上有的写安装readline-dev,这并不适用于Ubuntu系统,一定要找一下自己的操作系统安装readline的命令,不同的操作系统,命令是不一样的,要小心
安装
创建用户组和用户,并设置密码(root不能执行pgsql的一些命令,所以一定要创建postgresql这个用户)
sudo useradd -d /home/postgres -m postgres #创建用户并为用户创建主目录
passwd postgres #为用户postgre设置密码
注:
-m:自动建立用户的登入目录。
创建用户时没有密码,登录时又提示输入密码,那就 sudo passwd 用户名,然后回车输入两遍密码就可以为新用户添加密码了
下载postgresql
下载地址:https://www.postgresql.org/ftp/source/v11.0/
解压文件
在\home\postgres\目录下执行:tar -zxvf postgresql-11.0.tar
进入解压目录并配置参数
进入解压目录:cd postgresql-11.0
创建安装目录:sudo mkdir /opt/postgresql-11.0
配置安装参数:./configure --prefix=/opt/postgresql-11.0
注:
--prefix 指定安装目录
如果缺少readline,zlib,会报错,安装方法见依赖工具库
编译并安装
make & make install
注:linux编译安装中configure、make和make install各自的作用 https://www.jianshu.com/p/c70afbbf5172
创建数据库库文件存储目录并给postgresql用户赋予/opt/postgresql-11.0权限:
sudo mkdir /opt/postgresql-11.0/data
sudo mkdir /opt/postgresql-11.0/log
sudo touch /opt/postgresql-11.0/log/server.log
sudo chown -R postgres.postgres /opt/postgresql-11.0
注:-R是将文件和子目录的所有权也修改了
切换用户:
su postgres
添加环境变量:
export POSTGRESQL_HOME=/opt/postgresql-11.0
export PGDATA=/opt/postgresql-11.0/data
export PATH=.:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/opt/postgresql-11.0/bin:/opt/postgresql-11.0/data
#export PATH=$PATH:$POSTGRESQL_HOME/bin:$PGDATA
echo $PATH #查看环境变量
注:
若环境变量出错,可执行
命令行中执行export,只对当前用户,当前终端有效,切换用户后再切换回来,需重新设置
初始化数据库目录:
initdb
配置监听地址和端口:
vi data/postgresql.conf
修改为如下配置:
listen_addresses = '*'
port = 5432
也就是将注释号"#"去掉,并把"localhost"改为"*"
注:PostgreSQL.conf文件配置详解[转]https://www.cnblogs.com/kuang17/p/6902712.html 特别详细,备查
允许远程主机连接:
vi data/pg_hba.conf
添加加如下配置
host all all 0.0.0.0/0 trust
启动数据库
pg_ctl -l log/server.log start
注:
pg_ctl stop #关闭数据库
pg_ctl restart #重启数据库
-D data可以省略,系统会读取 PGDATA环境变量
启动数据库时遇到的错误
原因:修改pg_hba.conf出错
创建并连接数据库
createdb stu
psql stu
注:
stu为数据库名,可以自己指定
连接数据库时,必须指定数据库名
创建数据库时遇到错误:“could not conoect to database template1: could not connect to server:connections on unix domain socket "/var/run/postgresql/.s.PGSQL.5432”
解决方法:加上-h localhost这个选项
可能是在pg_hba.conf中没有设置好本机访问
连接数据库时遇到“psql: FATAL: role "postgresql" does not exist”错误
解决方案:使用 “psql -U postgres [数据库名]” 登录
连接数据库时遇到“psql: FATAL: Peer authentication failed for user "postgres"错误
解决办法如下:
1). 运行下面的命令编辑pg_hba.conf文件 sudo vim /etc/postgresql/9.1/main/pg_hba.conf
2). 将
# Database administrative login by Unix domain socket
local all postgres peer
改为
# Database administrative login by Unix domain socket
local all postgres trust
3). 保存后执行下面的命令重新加载配置文件: sudo /etc/init.d/postgresql reload
Ubuntu16 源码方式安装postgresql数据库的更多相关文章
- Linux下源码编译安装PostgreSQL数据库
我使用的Postgres的源码版本为 postgresql-9.3.5.系统为 CentOS6.5 ,是64位. 下载以后直接阅读其中的 README然后阅读其中的INSTALL,按照其中将的步骤做就 ...
- Linux上生产环境源码方式安装配置postgresql12
1.Linux上源码方式安装postgresql12 01.准备操作系统环境 echo "192.168.1.61 tsepg61" >> /etc/hosts mou ...
- centos7下源码方式安装gitlab8.9+发送邮件+ldap
CentOS7下源码方式安装gitlab 环境描述 操作系统: centos7 redis: >=2.8 mysql >=5.5.14 git >=2.7.4 架构设计 一台gitl ...
- 源码方式安装 lrzsz 库
我们都知道安装了lrzsz工具的linux系统环境: 在shell里可以非常方便的上传和下载linux里面的文件: 通常的安装方式: yum install lrzsz sudo apt-get in ...
- 源码方式安装 lrzsz库
源码方式安装 lrzsz库:https://www.cnblogs.com/cocoajin/p/11731787.html 我们都知道安装了lrzsz工具的linux系统环境,在shell里可以非常 ...
- 2-14 MySQL初步认识,及CentOS6.8环境,源码方式安装MySQL
什么是数据库: 存放数据的仓库RDBMS-->(Relational Database Management System) 关系型数据库管理系统DBMS--->(Database Man ...
- Centos6 系统下源码方式安装Mysql 记录
在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配. #### ...
- 树莓派学习笔记—— 源码方式安装opencv
0.前言 本文介绍怎样在树莓派中通过编译源码的方式安装opencv,并通过一个简单的样例说明怎样使用opencv. 很多其它内容请參考--[树莓派学习笔记--索引博文] 1.下载若干依 ...
- 在Ubuntu Kylin 16.04 LTS 上源码方式安装odoo
更新Ubuntu服务器软件源 运行以下代码: sudo apt-get update #更新软件源 sudo apt-get dist-upgrade #更新软件包,自动查找依赖关系 sudo s ...
随机推荐
- MyEclipse 10.7(版本:eclipse 3.7.x-Indigo系列)安装activiti-eclipse-plugin插件(流程设计器)
基本信息 1.本机MyEclipse 10.7菜单[Help->About MyEclipse Enterprise Workbench]的版本信息: MyEclipse Enterprise ...
- Spring数据库开发
Spring的数据库开发 #Spring中JDBC模板的作用 JDBC模板负责数据库资源管理和错误处理: #熟悉Spring JDBC的配置 配置数据源和jdbc模板 <?xml versio ...
- centos 6.5 gdb 7.10安装make[5]: *** [install-bfdincludeHEADERS] Error 1解决
make[5]: *** [install-bfdincludeHEADERS] Error 1make[5]: Leaving directory `/usr/local/gdb-7.10/bfd' ...
- mysql同步之otter/canal环境搭建完整详细版
接上一篇mysql 5.7多源复制(用于生产库多主库合并到一个查询从库). 这一篇详细介绍otter/canal环境搭建以及当同步出现异常时如何排查.本文主要参考https://blog.csdn.n ...
- RHEL6/7 x86_64下cachefilesd占用cpu达到100%
昨天,有个测试环境cachedfilesd CPU 100%,一直在跑了挺久,经查 1. CacheFiles介绍NFS是一种经常使用到的网络共享文件系统,在分布式环境下,多台服务器的文件共享是一个问 ...
- Examples of Scikit-learn Usages
Examples of Scikit-learn Usages KFold K-折交叉验证 >>> import numpy as np >>> from skle ...
- 01:tcp/ip基本知识
1.1 tcp常识 1.网络七层 2.TCP三层握手 ####1.第一次握手 # 建立连接时,客户端发送SYN包到服务器,其中包含客户端的初始序号seq=x,并进入SYN_SENT状态,等待服务器确认 ...
- x盒子
0换成1切回
- 轻重搭配|计蒜客2019蓝桥杯省赛 B 组模拟赛(一)
样例输入: 6 1 9 7 3 5 5 样例输出: 4 思路:贪心,选错贪心思路,只能过一小部分数据,正确贪心思路:从前一半遍历,在后一半中找到比当前元素的两倍大的数(因为这里指针不会后移,所以可以采 ...
- Sublime text 3 汉化教程
首先,需要安装Package Control 启动并进入sublime主界面,打开Sublime Text的控制台(快捷键 ctrl + ~) 然后我们到Package Control官方网站,复制s ...