Oracle移植postgreSQL系統-六、Oracle迁移postgreSQL后的验证(表)2

本文介绍了将Oracle数据库迁移至PostgreSQL后如何验证表的情况,包括在Oracle中查看表和分区表的状态,以及在PostgreSQL中查询表结构和数据量。迁移后验证涉及实时统计表数据、资源消耗考量以及分区分表的详细信息对比。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Oracle數據庫查看表情況

1、查看表情況及表記錄數(記錄數來自統計信息,不是精准的)

建議移植前先使用DBMS_STATS收集下統計信息。

Select t.Table_Name, t.Partitioned, t.Num_Rows

  From User_Tables t

 Order By t.Partitioned, t.Num_Rows Desc

2、生成查詢精確各表數據量

因查詢是實時根據數據庫數據情況進行統計,如數據量較大,非常消耗資源,建議根據上一步查詢的初步表數據量信息,分段執行。

Select 'select ''' || t.Table_Name || ''',count(*) from ' || t.Table_Name ||

       ' union'

  From User_Tables t

 Order By t.Num_Rows Desc

3、查看分區表情況

(1)查詢分區表具體情況

Select t.Table_Name,

       t.Partitioning_Type,

       t.Subpartitioning_Type,

       t.Partitioning_Key_Count,

       t.Subpartitioning_Key_Count,

       t.Interval

  From User_Part_Tables t

 Where t.Status = 'VALID'

(2)統計分區表數量

Select t.Table_Name, Count(*)

  From User_Tab_Partitions t

 Group By t.Table_Name

 Order By t.Table_Name

 

二、postgreSQL數據庫查詢表情況

1、即包含分區表,也包括分區表的分區

select *
from   pg_catalog.pg_tables t
where t.schemaname = 'test'

2、只查分區表的主表

select distinct tc.relname
from pg_catalog.pg_partitioned_table tp,
        pg_catalog.pg_class tc,
        pg_catalog.pg_namespace tn
where tp.partrelid = tc.oid
and tc.relnamespace = tn.oid
and tn.nspname = 'test'

3、只查分區表的分區

select *
from   pg_catalog.pg_tables t
where t.schemaname = 'test'

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值