<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>

                # 常見內存問題 1. `ERROR 4030 (HY000): OB-4030:Over tenant memory limits`。 當您看到上述錯誤信息時,首先需判斷是不是 MemStore 內存超限,當 MemStore 內存超限時,需要檢查數據寫入是否過量或未做限流。當遇到大量寫入且數據轉儲跟不上寫入速度的時候就會報這種錯誤。運行下述語句查看內存狀態: ~~~ obclient> SELECT /*+ READ_CONSISTENCY(WEAK),query_timeout(100000000) */ TENANT_ID,IP, round(ACTIVE/1024/1024/1024,2)ACTIVE_GB, round(TOTAL/1024/1024/1024,2) TOTAL_GB, round(FREEZE_TRIGGER/1024/1024/1024,2) FREEZE_TRIGGER_GB, round(TOTAL/FREEZE_TRIGGER*100,2) percent_trigger, round(MEM_LIMIT/1024/1024/1024,2) MEM_LIMIT_GB FROM gv$memstore WHERE tenant_id >1000 OR TENANT_ID=1 ORDER BY tenant_id,TOTAL_GB DESC; ~~~ 該問題的緊急應對措施是增加租戶內存。問題解決之后需要分析原因,如果是因為未做限流引起,需要加上相應措施,然后回滾之前加上的租戶內存動作。如果確實因為業務規模增長導致租戶內存不足以支撐業務時,需要根據轉儲的頻度設置合理的租戶內存大小。如果 MemStore 內存未超限,運行下述語句判斷是哪個內存模塊超限: ~~~ obclient> SELECT tenant_id,svr_ip,sum(hold) module_sum FROM __all_virtual_memory_info WHERE tenant_id>1000 AND hold<>0 AND mod_name NOT IN ( 'OB_KVSTORE_CACHE','OB_MEMSTORE’) GROUP BY tenant_id,svr_ip; ~~~ 內存模塊超限的判斷標準是:`module_sum`\> 租戶`min_memory`\> 租戶 MemStore。模塊內存超限,可能需要先調整單獨模塊的內存,例如,調整`ob_sql_work_area_percentage`的值,如果租戶內存過小,也需要增加租戶內存。 2. PLANCACHE 命中率低于 90%。 如果是 OLTP 系統 PLANCACHE 命中率應不低于 90%,運行下述語句查看 PLANCACHE 命中率: ~~~ obclient> SELECT hit_count,executions,(hit_count/executions) as hit_ratio FROM v$plan_cache_plan_stat where (hit_count/executions) < 0.9; SELECT hit_count,executions,(hit_count/executions) AS hit_ratio FROM v$plan_cache_plan_stat WHERE (hit_count/executions) < 0.9 AND executions > 1000; ~~~ 尋找是否有相似語句,例如`in`或`not in`后面的參數個數隨機,導致大量浪費;如果不是上述情況,可能業務量或會話激增導致內存不足,需要調整租戶內存大小。 3. 日志中有`fail to alloc memory`或`allocate memory fail`等錯誤信息。 日志中會包含`tenant_id`(租戶編號)及`mod_id`(內存模塊編號)信息,可以通過以下語句查詢具體的內存模塊信息: ~~~ obclient> SELECT * FROM __all_virtual_memory_info WHERE mod_id=xxx AND tenant_id = xxx ~~~ 從第一個常見內存問題中可知,如果模塊內存超限,可能需要先調整單獨模塊的內存。如果租戶內存過小,還需要增加租戶內存。
                  <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>

                              哎呀哎呀视频在线观看