Làm cách nào tôi có thể ước tính Kích thước bảng trong Lược đồ (Oracle)


11

Tôi đang cố ước tính kích thước bảng trong lược đồ của mình (tính bằng MB). Đây là những gì tôi có cho đến nay:

SELECT table_name, owner, last_analyzed
FROM all_tables

Tôi còn khá mới với SQL nên tôi không biết tôi sẽ làm thế nào để làm điều này.

Cảm ơn bạn.

Câu trả lời:


10

Nhìn vào chế độ xem "dba_segments" (hoặc user_segments nếu bạn không có quyền dba). Truy vấn sau đây sẽ cung cấp cho bạn những gì bạn đang tìm kiếm:

select
  owner as "Schema"
  , segment_name as "Object Name"
  , segment_type as "Object Type"
  , round(bytes/1024/1024,2) as "Object Size (Mb)"
  , tablespace_name as "Tablespace"
from dba_segments
order by owner;

Xin chào Benoit, nó hoạt động hoàn hảo cảm ơn bạn. Tôi đã xem xét các trường bảng mà tôi có thể đang sử dụng, nhưng tôi không thể tìm thấy "Chủ sở hữu" hoặc các trường được cập nhật lần cuối. Nhân tiện, tôi đã sử dụng chế độ xem user_segments. Thông tin này sẽ có sẵn theo dba_segments?
Diego R

Tất cả các phân đoạn được hiển thị trong user_segments đều thuộc sở hữu của tài khoản bạn đã sử dụng để đăng nhập bạn, đó là lý do tại sao không có cột chủ sở hữu.
Benoit
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.