溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么安裝使用PostgreSQL中pageinspcet插件

發(fā)布時間:2021-11-11 13:50:34 來源:億速云 閱讀:367 作者:iii 欄目:關(guān)系型數(shù)據(jù)庫

本篇內(nèi)容主要講解“怎么安裝使用PostgreSQL中pageinspcet插件”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么安裝使用PostgreSQL中pageinspcet插件”吧!

一、PG數(shù)據(jù)表存儲基礎(chǔ)

       一般來說,數(shù)據(jù)表數(shù)據(jù)物理存儲在非易失性存儲設(shè)備上面,PG也不例外。如下圖所示,數(shù)據(jù)表中的數(shù)據(jù)存儲在N個數(shù)據(jù)文件中,每個數(shù)據(jù)文件有N個Page(大小默認為8K,可在編譯安裝時指定)組成。Page為PG的最小存取單元。

怎么安裝使用PostgreSQL中pageinspcet插件

普通數(shù)據(jù)表存儲結(jié)構(gòu)

數(shù)據(jù)頁(Page)

        數(shù)據(jù)頁Page由頁頭、數(shù)據(jù)指針數(shù)組(ItemIdData)、可使用的空閑空間(Free Space)、實際數(shù)據(jù)(Items)和特殊空間(Special Space)組成。

    A、頁頭存儲LSN號、校驗位等元數(shù)據(jù)信息,占用24Bytes

    B、數(shù)據(jù)指針數(shù)組存儲指向?qū)嶋H數(shù)據(jù)的指針,數(shù)組中的元素ItemId可理解為相應(yīng)數(shù)據(jù)行在Page中的實際開始偏移,數(shù)據(jù)行指針I(yè)temID由三部分組成,前15位為Page內(nèi)偏移,中間2位為標志,后面15位為長度,詳細解析可參見附錄

    C、空閑空間為未使用可分配的空間,ItemID從空閑空間的頭部開始分配,Item(數(shù)據(jù)行)從空閑空間的尾部開始

     D、實際數(shù)據(jù)為數(shù)據(jù)的行數(shù)據(jù)(每種數(shù)據(jù)類型的存儲格式后續(xù)再解析)

     E、特殊空間用于存儲索引訪問使用的數(shù)據(jù),不同的訪問方法數(shù)據(jù)不同

二、pageinspect插件

       如何簡單快速方便的查看Page中的內(nèi)容?不同于Oracle各種dump,在PG中可以方便的使用pageinspect插件提供的各種函數(shù)查看Page中的內(nèi)容。

安裝

得益于PG良好的擴展性,安裝很簡單:

#cd $PGSRC/contrib/pageinspect

#make

#make install

簡單使用

#psql -d testdb

testdb#create extension pageinspect; -- 首次使用需創(chuàng)建Extension

-- 創(chuàng)建測試表

drop table  if exists t_new;

create table t_new (id char(4),c1 varchar(20));

insert into t_new values('1','#');

-- 查看page header&item

SELECT * FROM page_header(get_raw_page('t_new', 0));

select * from heap_page_items(get_raw_page('t_new',0));

怎么安裝使用PostgreSQL中pageinspcet插件

Page Header&Item

-- 查看Page中的raw內(nèi)容

\x

select * from get_raw_page('t_new', 0);

怎么安裝使用PostgreSQL中pageinspcet插件

Page頭部內(nèi)容

怎么安裝使用PostgreSQL中pageinspcet插件

Page尾部內(nèi)

到此,相信大家對“怎么安裝使用PostgreSQL中pageinspcet插件”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI