暂无图片
编译安装问题
我来答
分享
暂无图片 匿名用户
编译安装问题

下载的tar包,编译安装

tar  -zxvf  postgresql-12.19.tar.gz

cd  postgresql-12.19/

./configure --prefix=/usr/pgsql-12/

gmake world

gmake install-world



不知道为啥少了一些东西,例如在create  extension "uuid-ossp";就显示不存在

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
soul0202

1. 确认 uuid-ossp 模块已安装

首先,确保在编译安装 PostgreSQL 时,uuid-ossp 模块也被编译了。默认情况下,大多数模块应该已经被包含在内,但是有时可能需要手动确认。

进入 PostgreSQL 的源代码目录下的 contrib 文件夹,这里存放着许多额外的模块,包括 uuid-ossp

bash

深色版本

cd contrib/uuid_ossp
复制

然后,尝试在这个目录下运行 makemake install 命令来单独编译和安装这个模块:

bash

深色版本

make
sudo make install
复制

2. 检查 PostgreSQL 的共享预加载库设置

确保你的 PostgreSQL 配置允许使用额外的模块。打开你的 postgresql.conf 文件,并检查或添加以下行:

plaintext

深色版本

shared_preload_libraries = 'uuid-ossp'
复制

保存文件并重启 PostgreSQL 服务以应用更改。

3. 创建扩展

再次尝试创建扩展:

sql

深色版本

CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
复制

如果上述步骤后仍然无法创建 uuid-ossp 扩展,请检查 PostgreSQL 的错误日志,可能会提供有关为什么无法加载该模块的更多信息。

4. 检查 PostgreSQL 的版本兼容性

确保 uuid-ossp 模块的版本与你的 PostgreSQL 版本相匹配。虽然通常情况下,官方发布的 PostgreSQL 包含的模块都应该是兼容的,但如果使用的是第三方提供的模块,则需要注意这一点

暂无图片 评论
暂无图片 有用 2
打赏 0
Together
2024-11-04
我尝试 ./configure --prefix=/usr/pgsql-12/ --with-uuid=ossp 就能成功
回答交流
Markdown


请输入正文
提交
相关推荐
PostgreSQL中有8种锁,分别是什么锁?
回答 2
已采纳
PostgreSQL的8种锁中,最普通的是共享锁“SHARE”和排它锁“EXCLUSIVE”,因为多版本的原因,修改一条数据的同时允许读数据,所以为了处理这种情况,又加了两种锁“ACCESSSHARE
pg的逻辑复制,主从版本的问题
回答 3
流复制要求主备库的大版本一致,逻辑复制可以跨大版本的数据同步,也可以实现异构数据库的数据同步。
tbase数据库扩容数据节点后,可以直接删掉吗?
回答 1
tbase扩容的dn主节点是无法删除的,但是如果是增加的备dn或者cn节点,则可以删除。
请教postgre的数据库权限问题
回答 2
已采纳
在PostgreSQL中,创建数据库后,只有创建该数据库的用户和超级用户才有权访问该数据库。其他用户必须被明确授权才能访问。当你创建一个新用户时,该用户没有任何默认的权限,除非你明确授权。例如,如果你
pg_basebackup搭建从库报错
回答 3
最后在data/global目录下删除了pginternalbak.init文件,pgbasebackup命令执行成功
postgreSQL 修改最大连接数,只能重启吗?
回答 2
是的,只能重启。maxconnections (integer)决定数据库的最大并发连接数。这个参数只能在服务器启动时设置。
为什么postgresql日志文件中shut down之后基本同一时刻又ready to accept connections?
回答 2
上面的日志都属于数据库启动日志,可以注意截图中两句话的谓词:was和is。was提示过去关闭数据库服务的时间,is是现在数据库服务启动完成,可以进行连接了。
postgreSQL 报错An I/O error occurred while sending to the backend.要怎么解决呢?
回答 1
google一篇合适文档:https://stackoverflow.com/questions/49274390/postgresqlandhibernatejavaioioexceptiontri
在postgreSQL 里面在哪个表记录了表的创建时间和修改时间?
回答 3
pg没有系统表视图记录表的创建时间,但可以通过其他额外的手段来判断表的创建时间。通过pg日志在表创建前,设置参数logstatementddl,pg会在日志中记录所有ddl的语句操作,包括CREATE
在postgresql 表中建了一个check约束使用了like判断: check (name like '[0-9]'); 结果insert into 表名 values('0'); 执行报错:违反了检醒约束
回答 1
已采纳
可以使用similarto方法替换like(postgres@[local])[sbtest]14:01:15createtabletlike(idint,namevarchar(20)check(n