<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 18.17\. 開發人員選項 下面的選項目的是在PostgreSQL代碼上使用,并且在某些情況下可以幫助恢復嚴重損壞了的數據庫。 在生產環境里沒有理由使用這些設置。因此,我們把他們從樣例`postgresql.conf`文件中排除了出去。 請注意許多這些選項要求特殊的源代碼編譯標志才能運轉。 `allow_system_table_mods` (`boolean`) 允許修改系統表的結構。它可以被`initdb`使用。這個值只能在服務器啟動的時候設置。 `debug_assertions` (`boolean`) 打開各種斷言檢查。這是調試助手。如果你經歷了奇怪的問題或者崩潰, 那么你可能會想把這個打開,因為它可能暴露編程的錯誤。要使用這個選項, 我們必須在編譯PostgreSQL的時候定義宏`USE_ASSERT_CHECKING` (通過`configure`選項`--enable-cassert`完成)。 請注意,如果啟用斷言選項編譯PostgreSQL,那么`debug_assertions`缺省就是`on` `ignore_system_indexes` (`boolean`) 讀取系統表時忽略系統索引(但是修改系統表時依然同時修改索引)。 這個在從系統索引被破壞的表中恢復數據的時候很有用。該參數不能在會話啟動之后修改。 `post_auth_delay` (`integer`) 如果為非零,那么在一個新的服務器進程啟動并完成認證過程之后, 就會延遲這么多秒。這樣就給開發人員一個機會用調試器附著在一個服務器進程上。 該參數不能在會話啟動之后修改。 `pre_auth_delay` (`integer`) 如果為非零,那么在一個新的服務器進程派生出來之后, 就會延遲這么多秒,然后才會繼續認證過程。 這樣就給開發人員一個機會用調試器附著在一個服務器進程上跟蹤認證里面的異常行為。 這個選項只能在服務器啟動的時候或者在`postgresql.conf`文件里設置。 `trace_notify` (`boolean`) 為`LISTEN`和`NOTIFY`命令生成大量調試輸出。 [client_min_messages](#calibre_link-1448)或者[log_min_messages](#calibre_link-1449) 必須是`DEBUG1`。 或者更低才能把這些輸出分別發送到客戶端或者服務器日志。 `trace_recovery_messages` (`enum`) 啟用恢復相關的調試輸出的日志記錄,否則 不會被記錄。該參數允許用戶覆蓋[log_min_messages](#calibre_link-1449)的正常設置, 但僅限于特定消息。打算調試雙機熱備時使用。 有效值`DEBUG5`, `DEBUG4`,`DEBUG3`, `DEBUG2`, `DEBUG1`和`LOG`。 默認情況下,`LOG`不影響記錄決定。其他值會導致恢復相關的 記錄優先級或更高的調試消息,雖然他們 有`LOG`的優先級;對于`log_min_messages`常用的設置 導致無條件地發送這些到服務器日志。 這個參數只能在`postgresql.conf`文件或者服務器命令行中設置。 `trace_sort` (`boolean`) 如果打開,發出在排序操作中的資源使用的有關信息。 這個選項只有在編譯PostgreSQL的時候定義了`TRACE_SORT` 宏的時候才可用(不過,目前`TRACE_SORT`缺省就是定義了的)。 `trace_locks` (`boolean`) 如果打開,發出關于鎖用法信息。信息轉儲包括鎖定操作的類型,鎖定類型和 被鎖定或解鎖的對象的唯一標識符。 還包括已授權在該對象上的鎖類型 以及等待此對象上的鎖類型的位掩碼。 對于每個鎖類型的授予鎖和等待鎖的數量計數以及總數都被轉儲。 該日志文件輸出的例子在這顯示: ``` LOG: LockAcquire: new: lock(0xb7acd844) id(24688,24696,0,0,0,1) grantMask(0) req(0,0,0,0,0,0,0)=0 grant(0,0,0,0,0,0,0)=0 wait(0) type(AccessShareLock) LOG: GrantLock: lock(0xb7acd844) id(24688,24696,0,0,0,1) grantMask(2) req(1,0,0,0,0,0,0)=1 grant(1,0,0,0,0,0,0)=1 wait(0) type(AccessShareLock) LOG: UnGrantLock: updated: lock(0xb7acd844) id(24688,24696,0,0,0,1) grantMask(0) req(0,0,0,0,0,0,0)=0 grant(0,0,0,0,0,0,0)=0 wait(0) type(AccessShareLock) LOG: CleanUpLock: deleting: lock(0xb7acd844) id(24688,24696,0,0,0,1) grantMask(0) req(0,0,0,0,0,0,0)=0 grant(0,0,0,0,0,0,0)=0 wait(0) type(INVALID) ``` 結構詳情可以從`src/include/storage/lock.h`里找到。 當編譯PostgreSQL時,如果定義了`LOCK_DEBUG` 宏指令,則只能使用這個參數。 `trace_lwlocks` (`boolean`) 如果打開,則發出輕量級鎖用法信息。輕量級鎖主要提供訪問互斥以共享內存數據結構。 當編譯PostgreSQL時,如果定義了`LOCK_DEBUG` 宏指令,則只能使用這個參數。 `trace_userlocks` (`boolean`) 如果打開,則發出關于用戶鎖用法的信息。輸出類似于`trace_locks`, 僅僅為了咨詢鎖。 當編譯PostgreSQL時,如果定義了`LOCK_DEBUG` 宏指令,則只能使用這個參數。 `trace_lock_oidmin` (`integer`) 如果設置,不跟蹤低于這個OID的表鎖。(為了避免系統表輸出) 當編譯PostgreSQL時,如果定義了`LOCK_DEBUG` 宏指令,則只能使用這個參數。 `trace_lock_table` (`integer`) 無條件跟蹤表(OID)上的鎖。 當編譯PostgreSQL時,如果定義了`LOCK_DEBUG` 宏指令,則只能使用這個參數。 `debug_deadlocks` (`boolean`) 當死鎖發生超時,如果設置,那么備份所有當前鎖的信息。 當編譯PostgreSQL時,如果定義了`LOCK_DEBUG` 宏指令,則只能使用這個參數。 `log_btree_build_stats` (`boolean`) 如果設置,日志系統資源用法在各種B-tree操作上統計(內存和CPU)。 當編譯PostgreSQL時,如果定義了`BTREE_BUILD_STATS` 宏指令,則只能使用這個參數。 `wal_debug` (`boolean`) 打開 WAL 相關的調試輸出。只有在編譯PostgreSQL的時候打開了 `WAL_DEBUG`宏定義的情況下,這個選項才可用。 `ignore_checksum_failure` (`boolean`) 如果啟動[data checksums](#calibre_link-1547),已經受到影響。 在讀期間校驗失敗檢測導致PostgreSQL報告錯誤, 終止當前事務。設置`ignore_checksum_failure`的原因系統忽略失敗 (但仍然報告一個警告),并且 繼續處理。這種行為可能_造成死機,傳播或隱藏的崩潰,或其他嚴重的問題_。 然而,如果塊頭仍然是清醒的,它可能允許你獲取錯誤并且檢索仍然完好無損出現在表中未處理元組 。 如果頭部崩潰,即使啟用這個選項也將報告一個錯誤。 默認設置為`off`,它只能由超級用戶改變。 `zero_damaged_pages` (`boolean`) 如果偵測到一個損壞了的頁面頭通常會導致PostgreSQL報告一個錯誤,并且退出當前事務。 把`zero_damaged_pages`設置為 on 則令系統報告一個警告,把內存中損壞的頁面填充零,然后繼續處理。 這種行為會_破壞數據_,也就是所有在已經損壞頁面上的行。 但是它允許你繞開壞頁面然后從表中尚存的未損壞頁面上繼續檢索數據行。 因此它在因為硬件或者軟件錯誤導致的崩潰中進行恢復是很有用的。 通常你不應該把它設置為 on , 除非你已經徹底放棄從崩潰的頁面中恢復數據。 零填充頁面不強制到磁盤,所以建議重新創建表或再次關閉此參數之前的索引。 缺省的設置是`off`,并且只有超級用戶可以改變它。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看