在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

PostgreSQL中关于xid freeze的脚本有哪些

110次阅读
没有评论

共计 9144 个字符,预计需要花费 23 分钟才能阅读完成。

这篇文章主要讲解了“PostgreSQL 中关于 xid freeze 的脚本有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着丸趣 TV 小编的思路慢慢深入,一起来研究和学习“PostgreSQL 中关于 xid freeze 的脚本有哪些”吧!

Monitor Database
数据库监控脚本

[local:/data/run/pg12]:5120 pg12@testdb=# show autovacuum_freeze_max_age;
 autovacuum_freeze_max_age 
---------------------------
 200000000
(1 row)
[local:/data/run/pg12]:5120 pg12@testdb=# WITH max_age AS ( 
pg12@testdb(# SELECT 2000000000 as max_old_xid
pg12@testdb(# , setting AS autovacuum_freeze_max_age 
pg12@testdb(# FROM pg_catalog.pg_settings 
pg12@testdb(# WHERE name =  autovacuum_freeze_max_age  )
pg12@testdb-# , per_database_stats AS ( 
pg12@testdb(# SELECT datname
pg12@testdb(# , m.max_old_xid::int
pg12@testdb(# , m.autovacuum_freeze_max_age::int
pg12@testdb(# , age(d.datfrozenxid) AS oldest_current_xid 
pg12@testdb(# FROM pg_catalog.pg_database d 
pg12@testdb(# JOIN max_age m ON (true) 
pg12@testdb(# WHERE d.datallowconn ) 
pg12@testdb-# SELECT max(oldest_current_xid) AS oldest_current_xid
pg12@testdb-# , max(ROUND(100*(oldest_current_xid/max_old_xid::float))) AS percent_towards_wraparound
pg12@testdb-# , max(ROUND(100*(oldest_current_xid/autovacuum_freeze_max_age::float))) AS percent_towards_emergency_autovac 
pg12@testdb-# FROM per_database_stats;
 oldest_current_xid | percent_towards_wraparound | percent_towards_emergency_autovac 
--------------------+----------------------------+-----------------------------------
 3844 | 0 | 0
(1 row)
[local:/data/run/pg12]:5120 pg12@testdb=#

percent_towards_wraparound= 数据库年龄 /20 亿,如接近 100%,那么需要特别注意;
percent_towards_emergency_autovac= 数据库年龄 /autovacuum_freeze_max_age,autovacuum_freeze_max_age 参数一般为 2 亿。

下面的脚本列出了每个数据库的年龄和 autovacuum_freeze_max_age 参数的设定。

[local:/data/run/pg12]:5120 pg12@testdb=# SELECT datname
pg12@testdb-# , age(datfrozenxid)
pg12@testdb-# , current_setting(autovacuum_freeze_max_age) 
pg12@testdb-# FROM pg_database 
pg12@testdb-# ORDER BY 2 DESC;
 datname | age | current_setting 
-----------+------+-----------------
 postgres | 3844 | 200000000
 template1 | 3844 | 200000000
 template0 | 3844 | 200000000
 db1 | 3844 | 200000000
 db2 | 3844 | 200000000
 db3 | 3844 | 200000000
 testdb | 3844 | 200000000
(7 rows)

Monitor relation
监控关系(数据表)

[local:/data/run/pg12]:5120 pg12@testdb=# SELECT c.oid::regclass
pg12@testdb-# , age(c.relfrozenxid)
pg12@testdb-# , pg_size_pretty(pg_total_relation_size(c.oid)) 
pg12@testdb-# FROM pg_class c
pg12@testdb-# JOIN pg_namespace n on c.relnamespace = n.oid
pg12@testdb-# WHERE relkind IN (r ,  t ,  m) 
pg12@testdb-# AND n.nspname NOT IN (pg_toast)
pg12@testdb-# ORDER BY 2 DESC LIMIT 100;
 oid | age | pg_size_pretty 
--------------------------------------------+------+----------------
 pg_policy | 3844 | 24 kB
 pg_init_privs | 3844 | 72 kB
 pg_seclabel | 3844 | 16 kB
 pg_shseclabel | 3844 | 16 kB
 pg_collation | 3844 | 384 kB
 pg_partitioned_table | 3844 | 16 kB
 pg_range | 3844 | 56 kB
 pg_transform | 3844 | 16 kB
 pg_sequence | 3844 | 8192 bytes
 pg_publication | 3844 | 16 kB
 pg_publication_rel | 3844 | 16 kB
 pg_subscription_rel | 3844 | 8192 bytes
 information_schema.sql_packages | 3844 | 48 kB
 information_schema.sql_features | 3844 | 104 kB
 information_schema.sql_implementation_info | 3844 | 48 kB
 information_schema.sql_parts | 3844 | 48 kB
 information_schema.sql_languages | 3844 | 48 kB
 information_schema.sql_sizing | 3844 | 48 kB
 pg_statistic | 3844 | 312 kB
 pg_type | 3844 | 192 kB
 pg_foreign_server | 3844 | 24 kB
 pg_authid | 3844 | 48 kB
 pg_statistic_ext_data | 3844 | 16 kB
--More--

以上列出了每个 relation 的 age 以及 relation 的大小。

Auto Generate Script
该脚本自动创建清理脚本。

[local:/data/run/pg12]:5120 pg12@testdb=# \t
Tuples only is on.
[local:/data/run/pg12]:5120 pg12@testdb=# \o /tmp/vacuum.sql
[local:/data/run/pg12]:5120 pg12@testdb=# select  vacuum freeze analyze verbose   || oid::regclass ||   from pg_class where relkind in (r ,  t ,  m) order by age(relfrozenxid) desc limit 100;
[local:/data/run/pg12]:5120 pg12@testdb=# \o
[local:/data/run/pg12]:5120 pg12@testdb=# \t
Tuples only is off.
[local:/data/run/pg12]:5120 pg12@testdb=# \set ECHO all
[local:/data/run/pg12]:5120 pg12@testdb=# \! cat /tmp/vacuum.sql
 vacuum freeze analyze verbose pg_ts_parser;
 vacuum freeze analyze verbose pg_collation;
 vacuum freeze analyze verbose pg_partitioned_table;
 vacuum freeze analyze verbose pg_range;
 vacuum freeze analyze verbose pg_transform;
 vacuum freeze analyze verbose pg_sequence;
 vacuum freeze analyze verbose pg_publication;
 vacuum freeze analyze verbose pg_publication_rel;
 vacuum freeze analyze verbose pg_subscription_rel;
 vacuum freeze analyze verbose information_schema.sql_packages;
 vacuum freeze analyze verbose pg_toast.pg_toast_13426;
 vacuum freeze analyze verbose information_schema.sql_features;
 vacuum freeze analyze verbose pg_toast.pg_toast_13431;
 vacuum freeze analyze verbose pg_toast.pg_toast_13446;
 vacuum freeze analyze verbose information_schema.sql_implementation_info;
 vacuum freeze analyze verbose pg_toast.pg_toast_13436;
 vacuum freeze analyze verbose information_schema.sql_parts;
 vacuum freeze analyze verbose information_schema.sql_languages;
 vacuum freeze analyze verbose pg_toast.pg_toast_13441;
 vacuum freeze analyze verbose information_schema.sql_sizing;
 vacuum freeze analyze verbose pg_toast.pg_toast_13451;
 vacuum freeze analyze verbose pg_statistic;
 vacuum freeze analyze verbose pg_type;
 vacuum freeze analyze verbose pg_toast.pg_toast_2600;
 vacuum freeze analyze verbose pg_toast.pg_toast_2604;
 vacuum freeze analyze verbose pg_toast.pg_toast_3456;
 vacuum freeze analyze verbose pg_toast.pg_toast_2606;
 vacuum freeze analyze verbose pg_toast.pg_toast_826;
 vacuum freeze analyze verbose pg_toast.pg_toast_2609;
 vacuum freeze analyze verbose pg_toast.pg_toast_3466;
 vacuum freeze analyze verbose pg_toast.pg_toast_3079;
 vacuum freeze analyze verbose pg_toast.pg_toast_2328;
 vacuum freeze analyze verbose pg_toast.pg_toast_1417;
 vacuum freeze analyze verbose pg_toast.pg_toast_3118;
 vacuum freeze analyze verbose pg_toast.pg_toast_3394;
 vacuum freeze analyze verbose pg_toast.pg_toast_2612;
 vacuum freeze analyze verbose pg_toast.pg_toast_2615;
 vacuum freeze analyze verbose pg_foreign_server;
 vacuum freeze analyze verbose pg_toast.pg_toast_3350;
 vacuum freeze analyze verbose pg_toast.pg_toast_3256;
 vacuum freeze analyze verbose pg_toast.pg_toast_1255;
 vacuum freeze analyze verbose pg_toast.pg_toast_2618;
 vacuum freeze analyze verbose pg_toast.pg_toast_3596;
 vacuum freeze analyze verbose pg_toast.pg_toast_2619;
 vacuum freeze analyze verbose pg_toast.pg_toast_3381;
 vacuum freeze analyze verbose pg_toast.pg_toast_3429;
 vacuum freeze analyze verbose pg_toast.pg_toast_2620;
 vacuum freeze analyze verbose pg_toast.pg_toast_3600;
 vacuum freeze analyze verbose pg_toast.pg_toast_1247;
 vacuum freeze analyze verbose pg_toast.pg_toast_1418;
 vacuum freeze analyze verbose pg_toast.pg_toast_1260;
 vacuum freeze analyze verbose pg_toast.pg_toast_1262;
 vacuum freeze analyze verbose pg_toast.pg_toast_2964;
 vacuum freeze analyze verbose pg_toast.pg_toast_1136;
 vacuum freeze analyze verbose pg_toast.pg_toast_6000;
 vacuum freeze analyze verbose pg_toast.pg_toast_2396;
 vacuum freeze analyze verbose pg_toast.pg_toast_3592;
 vacuum freeze analyze verbose pg_toast.pg_toast_6100;
 vacuum freeze analyze verbose pg_toast.pg_toast_1213;
 vacuum freeze analyze verbose pg_authid;
 vacuum freeze analyze verbose pg_statistic_ext_data;
 vacuum freeze analyze verbose pg_user_mapping;
 vacuum freeze analyze verbose pg_subscription;
 vacuum freeze analyze verbose pg_attribute;
 vacuum freeze analyze verbose pg_proc;
 vacuum freeze analyze verbose pg_class;
 vacuum freeze analyze verbose pg_attrdef;
 vacuum freeze analyze verbose pg_constraint;
 vacuum freeze analyze verbose pg_inherits;
 vacuum freeze analyze verbose pg_index;
 vacuum freeze analyze verbose pg_operator;
 vacuum freeze analyze verbose pg_opfamily;
 vacuum freeze analyze verbose pg_opclass;
 vacuum freeze analyze verbose pg_am;
 vacuum freeze analyze verbose pg_amop;
 vacuum freeze analyze verbose pg_amproc;
 vacuum freeze analyze verbose pg_language;
 vacuum freeze analyze verbose pg_largeobject_metadata;
 vacuum freeze analyze verbose pg_aggregate;
 vacuum freeze analyze verbose pg_largeobject;
 vacuum freeze analyze verbose pg_statistic_ext;
 vacuum freeze analyze verbose pg_rewrite;
 vacuum freeze analyze verbose pg_trigger;
 vacuum freeze analyze verbose pg_event_trigger;
 vacuum freeze analyze verbose pg_description;
 vacuum freeze analyze verbose pg_cast;
 vacuum freeze analyze verbose pg_enum;
 vacuum freeze analyze verbose pg_namespace;
 vacuum freeze analyze verbose pg_conversion;
 vacuum freeze analyze verbose pg_depend;
 vacuum freeze analyze verbose pg_database;
 vacuum freeze analyze verbose pg_db_role_setting;
 vacuum freeze analyze verbose pg_tablespace;
 vacuum freeze analyze verbose pg_pltemplate;
 vacuum freeze analyze verbose pg_auth_members;
 vacuum freeze analyze verbose pg_shdepend;
 vacuum freeze analyze verbose pg_shdescription;
 vacuum freeze analyze verbose pg_ts_config;
 vacuum freeze analyze verbose pg_ts_config_map;
 vacuum freeze analyze verbose pg_ts_dict;
[local:/data/run/pg12]:5120 pg12@testdb=#

感谢各位的阅读,以上就是“PostgreSQL 中关于 xid freeze 的脚本有哪些”的内容了,经过本文的学习后,相信大家对 PostgreSQL 中关于 xid freeze 的脚本有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是丸趣 TV,丸趣 TV 小编将为大家推送更多相关知识点的文章,欢迎关注!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-26发表,共计9144字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 国产精品好好热在线观看 | 美女扒开屁股让男人桶 | 亚洲精品视频专区 | 精品人妻午夜一区二区三区四区 | 伊人干综合网 | 午夜爽爽爽视频 | 我想看毛片 | 天天亚洲综合 | a毛片免费全部播放完整成 a毛片免费视频 | 国产在线观看网站 | 人人妻人人爽人人做夜欢视频 | 天堂网www中文在线资源 | 中文字幕肉感巨大的乳专区 | 亚洲一区二区免费视频 | 狠狠色婷婷久久综合频道毛片 | 国产中老年妇女精品 | 天堂在线www| 51国产黑色丝袜高跟鞋 | 日本在线色 | 日本在线看片网站 | 国产成人免费视频 | 日本一卡二卡不卡视频查询 | 日本a免费| 亚洲午夜视频在线 | 国产欧美久久久精品影院 | 福利成人 | 久久国产劲暴∨内射 | 亚洲精品成人a | 亚洲欧美一区二区三区 | 特黄特色的大片观看免费视频 | 分享一个无毒不卡免费国产 | 成人a区 | 九九精品在线观看 | 国产av无码专区亚洲av麻豆 | 北岛玲日韩精品一区二区三区 | 久久亚洲网站 | 91福利国产在线在线播放 | 香蕉视频啊啊啊 | 变态另类先锋影音 | 青木玲中文字幕一区二区 | 欧美性生活在线视频 |