安装Postgresql(以Ubuntu18.04,pg12.2为例)
下载源码
- 官网链接:pg源码
- 下载对应的版本,选择对应的tar.bz2包下载
- 解压下载好的pg压缩包
进行安装
- 进入已经解压好的pg文件夹 ,我这里是
/home/ywb/Downloads/postgresql-12.2
- 可以查看具体的安装命令,通过查看INSTALL文件
- 这里开始进行安装
1). 执行命令:./configure --prefix=/usr/local/pgsql
--prefix这句是指定pg的安装路径。然后发现多了几个文件,其中就包含GNUmakefile
2). 编译执行命令:make clean
和make
注意:这里可能会报错,执行下面的命令,如果权限不允许,则加上sudo。
成功的话会提示:Ready to install
sudo apt-cache search readline
sudo apt install lib64readline8 lib64readline-dev
sudo apt install zlib1g-dev
sudo apt install gcc
sudo apt install libreadline6-dev
sudo apt install make
3). 安装执行命令:make install
执行成功会提示:PostgreSql installation complete
添加用户
- 如果执行失败,添加sudo试下
useradd -m -d /home/postgres -s /bin/bash postgres
passwd postgres
- 配置环境变量(注意,这里的路径一定要改为你的安装路径,即configure --prefix=PATH 中PATH的路径)、
注意可能提示/usr/local/pgsql/data这个文件夹没有,记得创建下
export PGHOME=/usr/local/pgsql
export PGDATA=/usr/local/pgsql/data
export PGPOOL_HOME=/usr/local/pgpool
export PGPORT=5432
export PGUSER=postgres
export PGHOST=localhost
export PATH=$PGHOME/bin:$PGPOOL_HOME/bin:$PATH
export LD_LIBRARY_PATH=/usr/local//pgsql/lib
- 创建数据存储目录
mkdir -p /opt/pgsql/data
chown postgres:postgres /usr/local//pgsql/data
- 初始化实例(注意:initdb这个文件在你安装路径的bin目录下,即/usr/local/pgsql/bin目录下)
su - postgres
initdb -D /usr/local/pgsq/data # 如果这句报错,则执行下面的那句
# ./initdb -D /usr/local/pgsq/data
- 修改数据库参数(即配置文件postgresql.conf、pg_hba.conf 在data文件目录下)
vim postgresql.conf
# listen_addresses = 'localhost' 改为 listen_addresses = '*'
vim pg_hba.conf # 最后一行添加
host all all 0.0.0.0/0 md5
- 启动pg数据库服务
pg_ctl start # 这句不行,就执行下面的
# ./pg_ctl start
- 连接数据库
su postgrs
psql -d postgres -U postgres -h 127.0.0.1 -p 5432
# -d 后面是指定连接的数据库名
# su - postgres
# psql
# jdbc:postgresql://127.0.0.1:5432/postgres # JDBC连接测试
- 数据库的简单操作
postgres=# create user user1 with password 'user01' ;
postgres=# create database userdb owner user11; -- 创建数据库指定所属者
postgres=# grant all on database userdb to user11; -- 将dbtest所有权限赋值给user
postgres=# \c dbName ; --切换数据库
postgres=# select vesion(); -- 查看pg对应的版本
postgres=# \dx; --查看已安装的插件
postgres=# \l; -- 查看数据库
postgres=# \d; -- 查看对应数据库下的表结构
postgres=# \dx+ 插件名; -- 显示扩展类型相关属性及描述
postgres=# \q; -- 退出数据库
安装Hypopg插件
下载源码
- github链接:Hypopg
安装
- 解压对应的hypopg包
- 进入已经解压好的文件目录下,执行如下命令
sudo make
sudo make install
# sudo ./make install
可能会遇到如下问题:make: pg_config: Command not found
解决办法:修改已解压Hypopg文件目录下的Makefile文件中的pg_config路径,改为你对应pg安装目录下的路径
创建插件(如果遇到问题见:HypoPg遇见的一些问题)
步骤如下:
注意:这个插件只会安装在当前数据库中,切换了数据库需要重新安装。
$ su postgres
$ psql -d postgres -U postgres -h 127.0.0.1 -p 5432
postgres=# create extension hypopg; # 会有创建成功的提示
postgres=# \dx; # 查看插件是否安装成功
测试Hypopg
可以去官网直接查看如何测试:官网