当前位置: 首页 > news >正文

ubuntu16.04下安装postgresql 10.3

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

在网上找了不少博客,结果还是一大坨的坑要我踩,踩完之后总结一下下吧!(适合初学者)

环境及资源

    Linux版本:ubuntu16.04

    PostgresSQL版本:postgresql-10.3

    PostgreSQL官网下载地址:https://www.postgresql.org/ftp/source/v10.3/

    直接下载postgresql-10.3.tar.gz

接下来是重点

一、准备工作

建议切换到root权限下进行postgresql数据库安装操作。默认系统或者虚拟机安装完成之后并不知道root用户的密码,那么如何应用root权限呢?

我们首先要重设置root用户的密码:sudo passwd root

之后就可以自由的切换到root用户了:su

输入root用户的密码即可。

数据库安装路径为:/usr/local/pgsql/

操作步骤:

  1. mkdir /usr/local/pgsql/
  2. 将下载的安装包上传到ubuntu(安装虚拟机的可以直接拖到桌面)
  3. 将安装包复制到我们要安装的目录下:cp /home/odoo/postgresql-10.3.tar.gz /usr/local/pgsql/(我的安装包放在了/home/odoo/目录下)
  4. 解压 安装包:

    gunzip postgresql-10.3.tar.gz

    tar xf postgresql-10.3.tar

二、安装

  1. 进入安装目录:cd /usr/local/pgsql/postgresql-10.3
  2. 查看当前环境是否支持安装,执行: ./configure 
    发现需要安装依赖:
    checking for library containing readline... no
    configure: error: readline library not found

    解决:apt-get install libreadline-dev
    继续执行: ./configure,发现:

    checking for inflate in -lz... no
    configure: error: zlib library not found

    解决:apt-get install zlib1g
              apt-get install zlib1g.dev
    继续执行:   ./configure ,至此,终于不再缺少依赖,第二步完成了。

  3. 执行: make
  4. 安装postgresql,执行: make install
    数据库安装完成:PostgreSQL installation complete.
  5. 添加postgres 用户,执行: adduser postgres
  6. 创建数据库文件夹,执行:mkdir /usr/local/pgsql/data
  7. 设置data夹属性:chown postgres /usr/local/pgsql/data

三、启动数据库

  1. 切换到postgres用户 :   su - postgres

  2. 初始化数据库(这里一定要切换到postgres用户):/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

  3. 启动数据库:/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data/
    停止数据库:/usr/local/pgsql/bin/pg_ctl stop -D /usr/local/pgsql/data/
    重启数据库:/usr/local/pgsql/bin/pg_ctl restart -D /usr/local/pgsql/data/

  4. 设置日志输入位置:
    (1)切换到root用户:su
    (2)设置日志输入位置:/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &
    (3)切换到postgres用户 :su - postgres

四、创建数据库及用户

进入/usr/local/pgsql/bin/目录:cd /usr/local/pgsql/bin/

  1. 创建数据库,执行:  ./createdb dbname(数据库名字)   
  2. 创建dbuser用户,执行  ./createuser -P dbuser (用户名)

五、访问数据库

  1. 执行:  ./psql
  2. 退出: ctrl + d

访问数据库后也可以用sql命令来新建用户

create user dbuser with password 'xxx';

六、远程访问数据库

需设置两个配置文件

  1. 修改配置文件postgresql.conf
    vim /usr/local/pgsql/data/postgresql.conf
    找到监听地址和端口(如下两行代码):
    #listen_addresses='localhost'
    #port = 5432
    listen_address 和 port 默认是被注释的,均要取消注释,修改如下图:
    37a8f0c0f132f8cf3ba3d411049017232a3.jpg
  2. 修改配置文件/pgsql/data/pg_hba.conf:
    vim /usr/local/pgsql/data/pg_hba.conf
    添加一条IP授权记录,可以对一个网段授权
    # IPv4 myhost connections:
    host    all         all         0.0.0.0/0          trust
    修改完成后重启数据库:/usr/local/pgsql/bin/pg_ctl restart -D /usr/local/pgsql/data/

七、使用windows下图形化工具navicat访问数据库

直接打开Navicat创建一个链接,填写好以下信息,连接:
3560417a0a459fdbc38dd6e307a2ad6d123.jpg

 

 参考原文:https://blog.csdn.net/cliviabao/article/details/80097884 

转载于:https://my.oschina.net/nameAfei/blog/2989370

相关文章:

  • Groovy与Java集成常见的坑
  • SQLserver视图修改sql
  • Visual Studio Code编写C/C++代码常见问题
  • iOS8 自定义UITabBar (使用popToViewController导致的UITabBarButton重叠的问题)
  • 排序算法(Merge Sort)中的 merge 步
  • BAT集体升级云事业部,这背后都藏着哪些“小心思”?
  • 【福利】BAT架构师分享最全Java架构师学习技能图谱:包含Java编程+网络+设计模式+数据库+分布式等...
  • 电磁波、无线电、802、WLAN及WiFi的区别与联系
  • 为什么Fiddler可以但是Charles不行
  • js基础--数组
  • Java 8 中的 Streams API 详解
  • HDFS知识点总结
  • 三种常用的会话管理
  • [luogu P1527]矩阵乘法(矩形k小)
  • Node单线程高并发原理
  • hexo+github搭建个人博客
  • CentOS 7 修改主机名
  • HTTP 简介
  • IDEA常用插件整理
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • Invalidate和postInvalidate的区别
  • Javascripit类型转换比较那点事儿,双等号(==)
  • Laravel 菜鸟晋级之路
  • Linux链接文件
  • MySQL Access denied for user 'root'@'localhost' 解决方法
  • spring + angular 实现导出excel
  • Vue ES6 Jade Scss Webpack Gulp
  • 跨域
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  •  一套莫尔斯电报听写、翻译系统
  • - 语言经验 - 《c++的高性能内存管理库tcmalloc和jemalloc》
  • 原生JS动态加载JS、CSS文件及代码脚本
  • 浅谈sql中的in与not in,exists与not exists的区别
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • (4) PIVOT 和 UPIVOT 的使用
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (NSDate) 时间 (time )比较
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (阿里云万网)-域名注册购买实名流程
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (附源码)ssm本科教学合格评估管理系统 毕业设计 180916
  • (九)信息融合方式简介
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (十)【Jmeter】线程(Threads(Users))之jp@gc - Stepping Thread Group (deprecated)
  • (一)Linux+Windows下安装ffmpeg
  • (原創) 是否该学PetShop将Model和BLL分开? (.NET) (N-Tier) (PetShop) (OO)
  • (原創) 物件導向與老子思想 (OO)
  • (转)用.Net的File控件上传文件的解决方案
  • .apk 成为历史!
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET Project Open Day(2011.11.13)
  • .Net的C#语言取月份数值对应的MonthName值
  • .net反混淆脱壳工具de4dot的使用
  • .Net各种迷惑命名解释