SELECT BYTES/ (1024*1024*1024) GB
FROM DBA_SEGMENTS D
JOIN DBA_LOBS L ON L.SEGMENT_NAME = D.SEGMENT_NAME
WHERE D.OWNER = 'SCHEMA_NAME' AND SEGMENT_NAME = 'MY_LOB'
| GB |
|---|
| 100 |
Actual LOB object size = 100 GB, but when moving LOB to another tablespace it takes up more space than 100 GB.
Oracle version 19c.
How to find the exact moving size LOB object ?
A couple of possibilities
1 - you are not taking into account the LOB index segment (although these are typically small relative to the LOB segment itself)
2 - you are comparing the sum of the lob contents with the anticipated segment size. Depending on your characterset, this can be out by a factor 2, eg
LOBS in multibyte characterset databases are stored in UCS2 format, so 2 bytes per character.