Ubuntu下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的命令,不同的操作系统,命令是不一样的,要小心
安装
1.下载postgresql
下载地址:https://www.postgresql.org/ftp/source/v11.0/
2.解压文件:
在zmy目录下执行:tar -zxvf postgresql-11.0.tar
3.进入解压目录并配置参数
进入解压目录:cd postgresql-11.0
创建安装目录:sudo mkdir /opt/postgresql-11.0
配置安装参数:./configure --prefix=/opt/postgresql-11.0
注:
--prefix 指定安装目录
如果缺少readline,zlib,会报错,安装方法见依赖工具库
4.编译并安装
make & make install
注:linux编译安装中configure、make和make install各自的作用 https://www.jianshu.com/p/c70afbbf5172
5.创建用户组和用户,并设置密码(root不能执行pgsql的一些命令,所以一定要创建postgresql这个用户)
sudo useradd -d /home/postgres -m postgres #创建用户并为用户创建主目录,-m:自动建立用户的登入目录。
passwd postgres #为用户postgre设置密码
注:创建用户时没有密码,登录时又提示输入密码,那就 sudo passwd 用户名,然后回车输入两遍密码就可以为新用户添加密码了
6.创建数据库库文件存储目录并给postgresql用户赋予权限:
进入数据库安装目录: cd /opt/postgresql-11.0
创建data目录: sudo mkdir data
给postgresql用户赋予权限:sudo chown postgres.postgres data
7.切换用户:
su postgres
8.添加环境变量:
export POSTGRESQL_HOME=/opt/postgresql-11.0
export PGDATA=/opt/postgresql-11.0/data
export PATH=$PATH:$POSTGRESQL_HOME/bin:$PGDATA
#查看环境变量
echo $POSTGRESQL_HOME echo $PGDATA
echo $PATH
9初始化数据库目录:
初始化数据: initdb
10.配置监听地址和端口:
vi data/postgresql.conf
修改为如下配置:
listen_addresses = '*'
port = 5432
也就是将注释号"#"去掉,并把"localhost"改为"*"
PostgreSQL.conf文件配置详解[转]https://www.cnblogs.com/kuang17/p/6902712.html 特别详细,备查
12.启动数据库
pg_ctl -l log/server.log start
#关闭数据库 pg_ctl stop #重启数据库 pg_ctl restart
注:
-D data可以省略,系统会读取 PGDATA环境变量
启动数据库时遇到的错误
原因:修改pg_hba.conf出错
13.创建并连接数据库
createdb -h localhost stu
psql -h localhost 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
Ubuntu下postgresql安装及常见错误处理的更多相关文章
- ubuntu下postgreSQL安装配置
一.安装并配置,并设置远程登陆的用户名和密码 1.安装postgreSQL sudo apt-get update sudo apt-get install postgresql-9.4 在Ubunt ...
- Ubuntu下postgresql安装
第一步:在Ubuntu下安装Postgresql 1.使用 apt-get install 安装 zhang@ubuntu:~/protgresql#sudo apt ...
- ubuntu下mysql安装(server、client、dev),开启、停止和重启,及常见错误
转自:ubuntu下mysql安装(server.client.dev),开启.停止和重启,及常见错误 1. 在ubuntu下安装server和client很简单: (1)安装server apt-g ...
- ubuntu 下编译安装 mysql php nginx 及常见错误 (持续添加)
mysql mysql 可以使用mysql 官方提供的apt源进行安装 参见这里 php 安装前先安装一些常见库 sudo apt-get install libpng16-16 libpng16-d ...
- Ubuntu下编译安装postgreSQL 10.5
Ubuntu下编译安装postgreSQL 10.5 ubuntu 16.04 LTS系统postgreSQL 10.5 安装包准备 1.从PostgreSQL官网下载PostgreSQL的安装包 安 ...
- ubuntu下git安装及使用
ubuntu下git安装及使用 其实,好几个月前,就已经安装好了,可是一直搁置在那儿,所以密码等一些其它细节都忘的差不多了,所以今天就重新部署了一下,并开始积极使用......... 1,git ...
- windows下postgreSQL安装与启动
转:https://www.yiibai.com/postgresql/install-postgresql.html https://blog.csdn.net/irainreally/articl ...
- PHP编译安装时常见错误解决办法,php编译常见错误
PHP编译安装时常见错误解决办法,php编译常见错误 1.configure: error: xslt-config not found. Please reinstall the libxslt & ...
- Elasticsearch学习之ElasticSearch 5.0.0 安装部署常见错误或问题
ElasticSearch 5.0.0 安装部署常见错误或问题 问题一: [--06T16::,][WARN ][o.e.b.JNANatives ] unable to install syscal ...
随机推荐
- Doing Homework HDU - 1074
Ignatius has just come back school from the 30th ACM/ICPC. Now he has a lot of homework to do. Every ...
- FileReader 获取图片base64数据流 并 生成图片
<?php if(isset($_GET['upload']) && $_GET['upload'] == 'img'){ if(isset($_GET['stream_type ...
- 使用dockerfile构建自己的镜像
CentOS Linux release 7.2.1511 Docker version 17.03.1-ce 首先应该了解docker镜像的分层机制,这个网上文章很多,简单说就是对镜像的每次修改都是 ...
- UUID实现之一twitter的分布式自增IDsnowflake算法
Twitter的分布式自增ID算法snowflake (Java版) 概述 分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点 ...
- ql常见面试题 受用了
//转至:http://www.cnblogs.com/GT_Andy/archive/2009/12/25/1921911.html 1. 用一条SQL 语句 查询出每门课都大于80 分的学生姓名 ...
- python简说(二)list
一.list # 1.list 列表 数组a = ['A', 'B', 'C', 'D']# 0 1 2# 2.空list# a = []# a = list()# 3.下标 角标 索引# print ...
- 在C#中使用OpenCV(使用OpenCVSharp)
在C#中使用OpenCV(使用OpenCVSharp) 1.什么是OpenCVSharp 为了解决在Csharp下编写OpenCV程序的问题,我做过比较深入的研究,并且实现了高效可用的方法 ...
- Python3 tkinter基础 Canvas create_rectangle 画虚边的矩形 create_oval 画椭圆形 圆形
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Super-palindrome 【可能是暴力】
Super-palindrome 时间限制: 1 Sec 内存限制: 128 MB 提交: 486 解决: 166 [提交] [状态] [命题人:admin] 题目描述 You are given ...
- bzoj1497 [NOI2006]最大获利 最大权闭合子图
链接 https://www.lydsy.com/JudgeOnline/problem.php?id=1497 思路 最大权闭合子图的裸题 一开始知道是这个最大权闭合子图(虽然我不知道名字),但是我 ...