PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Bagaimana Anda menemukan ukuran disk dari tabel Postgres / PostgreSQL dan indeksnya?

Coba Fungsi Ukuran Objek Database. Contoh:

SELECT pg_size_pretty(pg_total_relation_size('"<schema>"."<table>"'));

Untuk semua tabel, sesuatu di sepanjang baris:

SELECT
    table_schema || '.' || table_name AS table_full_name,
    pg_size_pretty(pg_total_relation_size('"' || table_schema || '"."' || table_name || '"')) AS size
FROM information_schema.tables
ORDER BY
    pg_total_relation_size('"' || table_schema || '"."' || table_name || '"') DESC;

Sunting:Inilah kueri yang dikirimkan oleh @phord, untuk kenyamanan:

SELECT
    table_name,
    pg_size_pretty(table_size) AS table_size,
    pg_size_pretty(indexes_size) AS indexes_size,
    pg_size_pretty(total_size) AS total_size
FROM (
    SELECT
        table_name,
        pg_table_size(table_name) AS table_size,
        pg_indexes_size(table_name) AS indexes_size,
        pg_total_relation_size(table_name) AS total_size
    FROM (
        SELECT ('"' || table_schema || '"."' || table_name || '"') AS table_name
        FROM information_schema.tables
    ) AS all_tables
    ORDER BY total_size DESC
) AS pretty_sizes;

Saya telah memodifikasinya sedikit untuk menggunakan pg_table_size() untuk memasukkan metadata dan membuat ukurannya bertambah.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara membuat pengguna untuk db di postgresql?

  2. Bagaimana cara saya terhubung ke PostgreSQL tanpa menentukan nama database?

  3. SQL INSERT tanpa menentukan kolom. Apa yang terjadi?

  4. Fungsi PostgreSQL / Prosedur Tersimpan CURRENT_TIMESTAMP tidak berubah

  5. Postgres Tertanam untuk Tes Boot Musim Semi