postgresql 安装_postgresql数据库安装与基本操作

postgresql 9.4.4 源码安装

Postgresql下载网址:

http://www.postgresql.org/ftp/source/

这里我们选择最新的稳定版版postgresql-9.4.4 的源码版

https://ftp.postgresql.org/pub/source/v9.4.4/postgresql-9.4.4.tar.bz2

下载后解压

tar jxvf postgresql-9.4.4.tar.bz2

因为postgresql不能用root 用户启动,需要为他重新新建一个用户

创建用户 

useradd pg944

进入下载的目录

cd postgresql-9.4.4

编译,这里设置安装目录

./configure --prefix=/home/pg944/pgsql

完成后执行 

gmake world
gmake install-world

到此为止,postgreSQL数据库程序安装完毕;

现在初始化postgresql 用户的相关配置:

su - pg944

添加环境变量:

vi ~/.bash_profile

进行环境变量的配置:

export PGPORT=1999
export PGDATA=/home/pg944/pg_root
export LANG=en_US.utf8
export PGHOME=/home/pg944/pgsql
export LD_LIBRARY_PATH=$PGHOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib:$LD_LIBRARY_PATH
export DATE=`date +"%Y%m%d%H%M"`
export PATH=$PGHOME/bin:$PATH:.
export MANPATH=$PGHOME/share/man:$MANPATH
export PGUSER=postgres
export PGHOST=$PGDATA
alias rm='rm -i'
alias ll='ls -lh'
export PGDATABASE=postgres

保存设置:

source ~/.bash_profile

初始化数据库:

initdb -D $PGDATA -E UTF8 --locale=C  -U postgres -W
$PGDATA代表配入环境变量的值,-U后面的 postgres 代表初始化数据库的用户名为 postgres;
这里要输入密码,和输入确认密码,输错会让你重新初始化
测试下:
$ psql -V
psql (PostgreSQL) 9.4.4

启动数据库:

./pg_ctl -D ../PGDATA  start\stop\restart

-D 命令 是为了启动非默认的 存放数据文件和配置文件的目录(PGDATA)

存放数据文件和配置文件的目录,文档中叫做cluster's data directory,内核分析中译作数据集簇。数据集簇通常叫做PGDATA。每个数据库实例都会有一个PGDATA,每台机器上可以并存多个不同的实例。640?wx_fmt=png

[pguser@TR-OS-DB 9.4]$ pg_ctl /data/pgdata/9.4/ start\stop\restart

就可以正常启动了。

切换至postgresql数据库用户pguser 或 postgres(根据自己实际情况)

640?wx_fmt=png SELECT version(); 

640?wx_fmt=png

2. 查看数据库大小:

SELECT pg_size_pretty(pg_database_size('tianrun')) As fulldbsize; 

640?wx_fmt=png

 3. 查看所有的数据库的大小:

select pg_database.datname, pg_size_pretty (pg_database_size(pg_database.datname)) AS size from pg_database;

640?wx_fmt=png

4. 查看各数据库数据创建时间:

select datname,(pg_stat_file(format('%s/%s/PG_VERSION', 

case
when spcname='pg_default' then 'base'
else 'pg_tblspc/'||t2.oid||'/PG_11_201804061/'
end,
t1.oid))).*
from pg_database t1,pg_tablespace t2 where t1.dattablespace=t2.oid;

 5.按占空间大小,顺序查看所有表的大小

select relname, pg_size_pretty(pg_relation_size(relid)) from pg_stat_user_tables where schemaname='public' order by pg_relation_size(relid) desc;

640?wx_fmt=png

 6. 按占空间大小,顺序查看索引大小

select indexrelname, pg_size_pretty(pg_relation_size(relid)) from pg_stat_user_indexes where schemaname='public' order by pg_relation_size(relid) desc;

640?wx_fmt=png

 结束语

因为努力,越来越好!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值