pg_dump: error: no matching tables were found

文章目录

环境

系统平台:Linux x86-64 Red Hat Enterprise Linux 7

版本:9.0.4,6.0.4,4.5.10

症状

瀚高数据库中,用户使用大写字母创建了表名,使用pg_dump导出表的过程中报:pg_dump: error: no matching tables were found

highgo@Linux80-A \~$ pg_dump -U sysdba -d highgo -t test."TEST" -Fc -f 1.dmp

pg_dump: error: no matching tables were found

问题原因

pg_dump在处理表名时对双引号有特殊处理,导致表名称的双引号位置发生变化

解决方案

对于大写的表名或模式名,使用单引号去注释下双引号便可解决。

示例一:只有表名大写

highgo@Linux80-A \~$ pg_dump -U highgo -d highgo -t test.'"TEST"' -Fc -f 1.dmp

示例二:模式名及表名均大写

highgo@Linux80-A \~ pg_dump -U sysdba -d highgo -t '"TEST"'.'"TEST"' -Fc -f 1.dmp 或 \[highgo@Linux80-A \~\] pg_dump -U sysdba -d highgo -t '"TEST"."TEST"' -Fc -f 1.dmp

示例三: 只有模式名大写

highgo@Linux80-A \~$ pg_dump -U sysdba -d highgo -t '"TEST"'.test -Fc -f 1.dmp

相关推荐
oradh1 小时前
Oracle TX 锁 Mode 4(Share)问题排查总结
数据库·oracle·tx 锁 mode 4·oracle tx 锁
yi.Ist1 小时前
数据定义语言-DDL操作
数据库·学习·mysql·oracle·大海豚
2601_963282773 小时前
工程项目、政企采购为什么优先选择对讲机批量采购?
数据库
Doraemomo3 小时前
SQLite数据库
数据库·sqlite
云贝教育-郑老师3 小时前
MySQL 的“黑匣子“:Performance Schema 把数据库内部变成一张可查的表
数据库·mysql
这个DBA有点耶5 小时前
同城双活落地的三座山:网络延迟、脑裂预防、反向同步
数据库·架构·dba
青春之我_XP5 小时前
MySQL 常用日期函数 实战指南
数据库·sql·mysql·数据分析·数据库开发·日期函数
Nturmoils5 小时前
sys_dump 备了库,角色和权限别漏在外面
数据库
接着奏乐接着舞。6 小时前
【2026】73道Redis 常见面试题与参考答案
数据库·redis·后端·缓存