您好,登錄后才能下訂單哦!
這篇文章主要介紹postgresql支不支持重建索引呢,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
PostgreSql數據庫的重建索引時通過REINDEX命令來實現的,如reindexindex_name;
其語法是:
REINDEX { INDEX | TABLE | DATABASE | SYSTEM } name [ FORCE ];
下面解釋下說明情況下需要:
1、 當由于軟件bug或者硬件原因導致的索引不再可用,索引的數據不再可用;
2、 當索引包含許多空的或者近似于空的頁,這個在b-tree索引會發生。Reindex會騰出空間釋放哪些無用的頁(頁就是存放數據的一個單位,類似于block)。
3、 PostgreSql數據庫系統修改了存儲參數,需要重建不然就會失效(如修改了fillfactor參數);
4、 創建并發索引時失敗,遺留了一個失效的索引。這樣的索引不會被使用,但重構后能用。一個索引的重構不能并發的執行。
下面介紹下重構索引命令的參數:
1、 INDEX 重構指定的索引;
2、 TABLE 重構指定表的所有索引,包括下級TOAST表;
3、 DATABASE重構指定數據庫的所有索引,系統共享索引也會被執行。需要注意的是這個級別的重構不能再一個事務塊中執行。
4、 SYSTEM 重構這個系統的索引包含當前的數據庫。共享系統中的索引頁是被包含的,但是用戶自己的表是不處理的,同樣也不能在一個事務塊中執行。
5、 Name 按照不同級別索引的名稱。
以上是postgresql支不支持重建索引呢的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。