设为首页 收藏本站
查看: 1363|回复: 0

[经验分享] postgreSQL在ubuntu环境下的安装使用

[复制链接]

尚未签到

发表于 2016-11-21 10:37:37 | 显示全部楼层 |阅读模式
PostgreSQL的安装
  PostgreSQL是著名的开源数据库(虽然很多人没听说过,大部分人可能对MySQL比较熟悉)。玩了一段时间的PG(PostgreSQL简称),但中间却没有整理过,现在暂时不玩了,也总得整理整理,免得回过头来看看,好象自己这段时间跟白费了似的。
下载PG源码
  先去PG的官网下载源码。http://www.postgresql.org/download/
  Download source code进入其源码ftp,选择一个较新的稳定版本,9.1.0可以。
编译安装PG
  因为我是在vmware虚拟机里玩的,所以先通过设置共享目录,将主机下的东西传进虚拟机(vmware虚拟机共享文件目录是/mnt/hgfs)。当然也可以通过winSCP之类的文件传输软件将主机的文件传到虚拟机中。最好将虚拟机的ip地址固定,免得每次连接都不一样,可以通过ifconfig eth0 ip 192.168.1.1来固定虚拟机的ip地址。
  将PG的源码压缩包postgresql-9.1.0.tar传到虚拟机之后,通过命令tar xvf postgresql-9.1.0.tar解压。进到解压后的目录下,便可看到PG的源码目录
DSC0000.jpg

  打开INSTALL,里面会提示编译源码安装的步骤:
DSC0001.jpg

  按照步骤先运行configure,但很不幸,遇到了这样的错误
DSC0002.jpg

  本来想尝试去解决readline library的库问题,但查了查这也是无关紧要的,因此就加上了--without-readline选项去运行:
  ./configure –without-readline
  这次可以跳过readline的编译问题,但又出现了zlib库找不到的问题,继续忽略,运行:
  ./configure –without-readline –without-zlib
  这下总算顺利通过了。
  接着就是make,10分钟后,make install顺利安装了PG。
  按默认选项安装完的PG会放在/usr/local/pgsql/下(/usr有点类似于windows的programs file目录)。
  进到PG的bin目录下,就可以初始化数据库,启动服务端,使用客户端等操作了。
  cd /usr/local/pgsql/bin
  ./initdb -D /usr/local/pgsql/data(初始化数据库)
  ./postgres -D /usr/local/pgsql/data >logfile 2>&1 &(启动PostgreSQL的数据库服务)
  ./createdb test(创建test数据库)
  ./psql test(连接test数据库)
  这里要注意一下,PG数据库服务不能以root用户运行 ,因此,最好新建一个用户,建议加一个名为postgres的用户来启动数据库服务。
  sudo adduser postgres
简化执行
  每次启动数据库服务都要进入PG的bin目录,再敲一堆命令什么的也不方便,不如直接将bin下的可执行程序加到用户环境变量当中。可通过下列方式实现。
  打开用户的环境配置文件,是/home/username/下的.profile,通过vim命令打开(如果没装vim可以通过sudo apt-get install vim来安装)。在末尾处加上:
  export PGDATA=/usr/local/pgsql/data
  export PATH=$PATH:/usr/local/pgsql/bin
  PGDATA是postgres –D后面指定的数据库文件存放目录,通过这样的设置,如果直接运行postgres或pg_ctl start那么数据库文件会默认存放在/usr/local/pgsql/data目录中的。
  至此,PG的安装结束,用户在开启数据库服务的状态下,可以使用psql客户端来连接并访问数据库,通过SQL语言来操作。
DSC0003.jpg

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-303362-1-1.html 上篇帖子: 发个C语言连接Postgresql程序(转) 下篇帖子: PostgreSQL远程连接配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表