背景:
由于对PostgreSQL比较感兴趣,作者想要体验一下在界面上管理PostgreSQL数据库,网上一番寻找,看到了一款叫clup的软件,可以在web界面上管理PostgreSQL数据库实例和集群。本文是熟悉该软件功能的过程记录之一。
1.安装clup
按照官方的命令执行一下就可以了,会自动把需要的依赖都装好.这里装的是企业版。还有开源版,安装方式相同,只是命令的参数从clup变成openclup。
wget -qO /tmp/clup.sh --no-check-certificate https://get.csudata.com/csuinst/clup.sh && bash /tmp/clup.sh clup install
下列命令还需指定clup的地址,这里是本机地址
wget -qO /tmp/clup.sh --no-check-certificate https://get.csudata.com/csuinst/clup.sh && bash /tmp/clup.sh clup-agent install
执行成功后用浏览器访问http://ip:port地址,ip为该服务器地址,port为8090。
默认账号:admin
默认密码:cstech
2.安装PostgreSQL数据库
CLup官方文档提到可以执行以下命令安装编译好的PostgreSQL软件,包括11到14的四个版本。但仅限于el7.x86_64和el8.x86_64。
wget -qO /tmp/clup.sh --no-check-certificate https://get.csudata.com/csuinst/clup.sh && bash /tmp/clup.sh db install
其他操作系统下可直接使用包管理器安装PG14,作者这里的测试环境是rocky9,所以也用下列这种方式安装PostgreSQL软件。
yum install postgresql14-server postgresql14-contrib
此安装方法会默认创建一个postgres用户,需要删除该用户,因为该用户配置并不完整,之后创建数据库实例时会创建postgres用户。
userdel postgres
3.创建数据库实例
数据库列表->实例列表->创建数据库实例->创建PostgreSQL实例
信息如下,只需要选择主机和数据库软件,并填写数据目录即可。
点击提交,会弹出Plug-in(pg_store_plans) not installed的报错信息,因为没有安装pg_store_plans插件,这个插件用于收集和存储查询计划,目前可以不用这个插件。
两种解决办法:
(1)安装pg_store_plans插件
在包管理器中查找pg_store_plans插件:
yum search pg_store_plans
这里因为操作系统版本过高,导致没有基于PG14的版本可以下载,所以只能源码编译安装:
下载pg_store_plans插件,PG14下载1.6.1版本,地址:
https://gitee.com/mirrors_ossc-db/pg_store_plans
下载依赖
yum install clang postgresql14-devel
编译安装
cd pg_store_plans-1.6.1
make USE_PGXS=1
make USE_PGXS=1 PG_CONFIG=/usr/pgsql-14/bin/pg_config
(2)不用pg_store_plans插件。点击下一步,在shared_preload_libraries参数处把pg_store_plans删除,一直下一步就能创建。
点击提交后,弹出创建数据库的日志,在最后报了一个错。这个错说没有/var/lib/pgsql/.bashrc文件,根据经验得出此环境变量文件不应该在这个位置,这是因为在postgresql14-server是会默认创建一个postgres用户,此用户没有设置环境变量文件。如果在前文删除了postgres用户就不会报该错。
解决办法:删除postgres用户,再创建数据库实例
userdel postgres
创建成功:
4.基本功能
成功创建数据库实例后,选择数据库实例点击更多,有很多功能,包括停止、重启数据库基本功能,还包括psql,可以在此连接数据库。
界面如下:
也能从"登录主机"连接到该服务器,界面如下: