Guest User

postgresql tuner output

a guest
May 24th, 2022
38
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.88 KB | None | 0 0
  1. postgresqltuner.pl version 1.0.1
  2. [OK] I can invoke executables
  3. Connecting to /var/run/postgresql:5432 database database as user 'postgres_admin'...
  4. [OK] The user account used by me for reporting has superuser rights on this PostgreSQL instance
  5. ===== OS information =====
  6. [INFO] OS: linux Version: 4.19.0 Arch: x86_64-linux-gnu-thread-multi
  7. Use of uninitialized value $os_mem in pattern match (m//) at ./postgresqltuner.pl line 318.
  8. Use of uninitialized value $os_mem in pattern match (m//) at ./postgresqltuner.pl line 319.
  9. Use of uninitialized value in numeric eq (==) at ./postgresqltuner.pl line 321.
  10. [BAD] Memory overcommitment is allowed on the system. This may lead the OOM Killer to kill at least one PostgreSQL process, DANGER!
  11. [INFO] sysctl vm.overcommit_ratio=50
  12. [BAD] vm.overcommit_ratio is too low, you will not be able to use more than (50/100)*RAM+SWAP for applications
  13. [INFO] Running (probably) directly on a physical machine
  14. [INFO] Currently used I/O scheduler(s): mq-deadline
  15. ===== General instance informations =====
  16. ----- PostgreSQL version -----
  17. [OK] You are using the latest PostreSQL major version (14.0 (Debian 14.0-1.pgdg110+1))
  18. ----- Uptime -----
  19. [INFO] Service uptime: 18d 06m 00s
  20. ----- Databases -----
  21. [INFO] Database count (except templates): 3
  22. [INFO] Database list (except templates): postgres postgres_admin database
  23. ----- Extensions -----
  24. [INFO] Number of activated extensions: 1
  25. [INFO] Activated extensions: plpgsql
  26. [WARN] Extension pg_stat_statements is disabled in database
  27. ----- Users -----
  28. [OK] No user account will expire in less than 7 days
  29. [OK] No user with password=username
  30. [OK] Password encryption enabled
  31. ----- Connection information -----
  32. [INFO] max_connections: 500
  33. [INFO] Current used connections: 6 (1.20%)
  34. [INFO] 3 connections are reserved for super user (0.60%)
  35. [INFO] Average connection age: 15d 05m 00s
  36. ----- Memory usage -----
  37. [INFO] Configured work_mem: 4.00 MB
  38. [INFO] Using an average ratio of work_mem buffers by connection of 150% (use --wmp to change it)
  39. [INFO] Total work_mem (per connection): 6.00 MB
  40. [INFO] shared_buffers: 128.00 MB
  41. [INFO] Track activity reserved size: 0.00 B
  42. [WARN] maintenance_work_mem is less or equal to its default value. Increase it to reduce maintenance tasks duration
  43. [INFO] Max memory usage:
  44. shared_buffers (128.00 MB)
  45. + max_connections * work_mem * average_work_mem_buffers_per_connection (500 * 4.00 MB * 150 / 100 = 2.93 GB)
  46. + autovacuum_max_workers * maintenance_work_mem (3 * 64.00 MB = 192.00 MB)
  47. + track activity size (0.00 B)
  48. = 3.24 GB
  49. [INFO] effective_cache_size: 4.00 GB
  50. [INFO] Cumulated size of all databases: 59.23 MB
  51. [WARN] shared_buffer is too big for the total databases size, uselessly using memory
  52. [UNKNOWN] OS total mem unknown: unable to analyse PostgreSQL memory usage
  53. ----- Huge Pages -----
  54. [WARN] No Huge Pages available on the system
  55. ----- Logs -----
  56. [OK] log_hostname is off: no reverse DNS lookup latency
  57. [WARN] Log of long queries deactivated. It will be more difficult to optimize query performance
  58. [OK] log_statement=none
  59. ----- Two-phase commit -----
  60. [OK] Currently there is no two-phase commit transaction
  61. ----- Autovacuum -----
  62. [OK] autovacuum is activated
  63. [INFO] autovacuum_max_workers: 3
  64. ----- Checkpoint -----
  65. [OK] checkpoint_completion_target (0.9) OK
  66. [INFO] Given those settings PostgreSQL may (depending on its workload) ask the kernel to write (to the storage) up to 1024.00 MB in a timeframe lasting 270 seconds <=> 3.79 MB bytes/second during this timeframe. You may want to check that your storage is able to cope with this, along with all other I/O (non-writing queries, other software...) operations potentially active during this timeframe. If this seems inadequate check max_wal_size, checkpoint_timeout and checkpoint_completion_target
  67. ----- Storage -----
  68. [OK] fsync is on
  69. [OK] synchronize_seqscans is on
  70. ----- WAL -----
  71. ----- Planner -----
  72. [OK] I/O cost settings are set at their default values
  73. [WARN] With SSD storage, set random_page_cost=seq_page_cost to help the planner prefer index scans
  74. [BAD] Some plan features are disabled: enable_partitionwise_aggregate,enable_partitionwise_join
  75. ===== Database information for database databse =====
  76. ----- Database size -----
  77. [INFO] Database database total size: 26.12 MB
  78. [INFO] Database database tables size: 14.34 MB (54.90%)
  79. [INFO] Database database indexes size: 11.78 MB (45.10%)
  80. ----- Tablespace location -----
  81. [OK] No tablespace in PGDATA
  82. ----- Shared buffer hit rate -----
  83. [INFO] shared_buffer_heap_hit_rate: 100.00%
  84. [INFO] shared_buffer_toast_hit_rate: 99.97%
  85. [INFO] shared_buffer_tidx_hit_rate: 100.00%
  86. [INFO] shared_buffer_idx_hit_rate: 100.00%
  87. [INFO] This is too high. If this PostgreSQL instance was recently used as it usually is and was not stopped since, then you may reduce shared_buffer
  88. ----- Indexes -----
  89. [OK] No invalid index
  90. [WARN] 117 indexes were not used since the last statistics run
  91. ----- Procedures -----
  92. [OK] No procedures with default costs
  93.  
  94. ===== Configuration advice =====
  95. ----- extension -----
  96. [LOW] Enable pg_stat_statements in database database to collect statistics on all queries (not only those longer than log_min_duration_statement)
  97. ----- index -----
  98. [MEDIUM] You have unused indexes in the database since the last statistics run. Please remove them if they are rarely or not used
  99. ----- planner -----
  100. [MEDIUM] Set random_page_cost=seq_page_cost on SSD storage
  101. ----- system -----
  102. [HIGH] set vm.overcommit_memory=2 in /etc/sysctl.conf and invoke sysctl -p /etc/sysctl.conf to enforce it. This will disable memory overcommitment and avoid having a PostgreSQL process killed by the OOM killer
Advertisement
Add Comment
Please, Sign In to add comment