本文介绍通过PostgreSQL官方源码安装包编译安装的方式来快速上手PostgreSQL数据库。
前提条件
- 安装gmake,通过gmake -v查看
- 安装gcc,通过which gcc查看
- 安装tar,通过tar --help查看
- 安装GNU readline library,支持上下键、回退键等,通过rpm -qa | grep readline查看
- 安装Zlib compression library,用于压缩功能
创建用户
- id postgres -查看是否有postgres用户
- groupadd postgres -添加postgres组
- useradd -g postgres postgres -添加postgres用户
- passwd postgres -修改postgres密码
- mkdir -p /data/postgres/13.2/ -创建数据库目录
- chown -R postgres:postgres /data/ -修改数据库目录权限
安装并启动数据库
- su – postgres -切换postgres用户
- wget xxx.tar.gz -下载源码包
- tar -xzvf xxx.tar.gz -解压
- cd postgresql-13.2 -切换目录
- ./configure –preifx=/data/postgres/13.2/ -执行configure
- gmake world -执行gmake
- gmake install-world -执行gmake install
- /data/postgres/13.2/bin/initdb -d /data/postgres/13.2/data -初始化数据库
- /data/postgres/13.2/pg_ctl -D /data/postgres/13.2/data -l logfile start -启动数据库
修改环境变量
目的是为了不需要指定可执行文件(如psql、pg_ctl等)的绝对路径
- 修改postgres用户的~/.bash_profile,也可以直接修改~/.bashrc
PATH=xxx:/data/postgres/13.2/bin
PGDATA=/data/postgres/13.2/data
export PATH
export PGDATA - source ~/.bashrc
- 执行psql验证环境变量修改生效
修改数据库配置
-
在/data/postgres/13.2/data/pg_hba.conf中,添加下面行:
host all all 0.0.0.0/0 md5
以上表示对于所有使用IPV4的客户端机器,允许通过任意IP,通过任意用户可以发起对数据库的访问,但必须要提供数据库用户密码,认证方式为通过MD5加密认证。
-
在/data/postgres/13.2/data/data/postgresql.conf中,修改
#listen_addresses=’localhost’为listen_addresses=’*’
需要重启
pg_ctl restart -m fast
表示允许任意客户端访问
如何启停数据库
- ps -ef | grep postges -检查数据库是否运行
- pg_ctl stop -m fast -停止数据库
- pg_ctl start -D /data/postgres/13/2/data -l ~/startup.log -启动数据库
- pg_ctl status -检查数据库状态
熟悉psql命令行工具
which psql
psql --help
psql -h localhost -p 5432 -d postgres -U postgres
\c -查看哪个用户连接哪个数据库
\d –查看表
\d <tablename> -查看表结构
\i ext.sql -执行一个文件,相当于Oracle中的@
\h -查看所有命令
\h create table -查看create table的帮助文档
select version(); -查看版本
\l -查看所有数据库信息
\l+ -查看数据库信息及大小信息
select pg_postmaster_start_time();
\du -查看用户信息
\dt+ -查看表大小
\di+ -查看索引信息
\dv -查看视图
\df -查看函数