欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

快速解決openGauss數(shù)據(jù)庫pg_xlog爆滿問題

 更新時間:2023年04月27日 11:52:25   作者:Gauss松鼠會  
這篇文章主要介紹了openGauss數(shù)據(jù)庫pg_xlog爆滿問題解決,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

問題現(xiàn)象

最近有一個之前搭的環(huán)境登不上了,好久沒用想拿來測試的時候發(fā)現(xiàn)啟動不了。啟動時報錯:
[Errno 28] No space left on device

query也不行了,提示沒有空間了。

查詢磁盤使用情況 df -h ,果然100%

這個環(huán)境當時安裝的是主備,看了下備庫的服務器,發(fā)現(xiàn)不知道啥時候已經(jīng)被刪庫了,安裝用戶都不在了。

問題定位

進一步排查主庫服務器,發(fā)現(xiàn)opt目錄下的空間最可疑。

[root@opengauss1 /]# du  -lh --max-depth=1

根據(jù)經(jīng)驗直奔data/dn目錄,果然就是這里 ,pg_xlog下面產(chǎn)生了過多日志文件。

看了下文件個數(shù),有1500多個。

[root@opengauss1 pg_xlog]# ls -l  |wc -l
1591

但是pg_xlog是WAL日志,是不能直接刪除的。我們在另外空閑的空間下/tmp新建目錄,再挪一部分xlog過去

[omm@opengauss1 ~]$ cd /tmp/
[omm@opengauss1 tmp]$ ll
total 0
-rw-r--r-- 1 root root  0 Mar 22 11:40 ck_monitor.lock
drwxr-x--- 2 root root 40 Sep 29 10:00 his-matrixagent_job
-rw-r--r-- 1 root root  0 Mar 22 11:40 monitor.lock
dr-xr-x--- 2 root root 40 May 27  2022 pub
drwx------ 3 root root 60 May  6  2022 systemd-private-ff4a118aad534bfe95b6b390fe984558-chronyd.service-Cy8Q8X
drwx------ 3 root root 60 May  6  2022 systemd-private-ff4a118aad534bfe95b6b390fe984558-systemd-logind.service-KrDeKX
[omm@opengauss1 tmp]$ mkdir xlog_mv_322

回到 pg_xlog目錄 執(zhí)行遷移

[omm@opengauss1 pg_xlog]$ ls -ltr | head -n 100 | awk '{print "mv "$9  " /tmp/xlog_mv_322/"}' | sh

再嘗試重新啟動數(shù)據(jù)庫。因為我的備庫已經(jīng)完全廢棄了,只能指定以主庫模型重啟 加 -M primary參數(shù)。

[omm@opengauss1 pg_xlog]$ gs_ctl  start -D /opt/huawei/install/data/dn/ -M primary

主庫啟動成功。登進去查看邏輯復制槽。

[omm@opengauss1 pg_xlog]$ gsql -d postgres -p 15400 -r
gsql ((openGauss 3.0.0 build 02c14696) compiled at 2022-04-01 18:12:19 commit 0 last mr  )
NOTICE : The password has been expired, please change the password.
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.
openGauss=# select * from pg_replication_slots;
slot_name | plugin | slot_type | datoid | database | active | xmin | catalog_xmin | restart_lsn | dummy_standby
-----------+--------+-----------+--------+----------+--------+------+--------------+-------------+---------------
dn_6002   |        | physical  |      0 |          | f      |      |              | 1/4C6B8F70  | f
(1 row)

刪除失效邏輯復制槽

openGauss=# select * from pg_drop_replication_slot('dn_6002');
WARNING:  replicationSlotMinLSN is InvalidXLogRecPtr!!!
WARNING:  replicationSlotMaxLSN is InvalidXLogRecPtr!!!
pg_drop_replication_slot
--------------------------
(1 row)
openGauss=#  select * from pg_replication_slots;
slot_name | plugin | slot_type | datoid | database | active | xmin | catalog_xmin | restart_lsn | dummy_standby
-----------+--------+-----------+--------+----------+--------+------+--------------+-------------+---------------
(0 rows)

查看相關參數(shù)

openGauss=#  show wal_keep_segments;
wal_keep_segments
-------------------
16
(1 row)
openGauss=# show max_size_for_xlog_prune;
max_size_for_xlog_prune
-------------------------
2147483647kB
(1 row)
openGauss=# show enable_xlog_prune;
enable_xlog_prune
-------------------
on
(1 row)
openGauss=# show archive_mode;
archive_mode
--------------
off
(1 row)
openGauss=# \q

綜合看下來, max_size_for_xlog_prune參數(shù)的問題,它表示如果有備機斷連且xlog日志大小大于此閾值,則回收日志。但是,默認值 給 的 太大了2048G,但是我這個環(huán)境只有40G,磁盤撐爆了。

解決辦法

知道了問題,那么解決方法就是修改max_size_for_xlog_prune為4G,多余的日志 讓DB自動清理。

[omm@opengauss1 pg_xlog]$ gs_guc reload -D /opt/huawei/install/data/dn/ -c "max_size_for_xlog_prune=4194304"

再去查看空間已經(jīng)釋放。

問題解決,主庫又能繼續(xù)堅持工作了。

總結

當歸檔或流復制發(fā)生異常時,事務日志會不斷生成,如果默認值沒修改,可能會造成磁盤撐爆,直接導致DB掛掉還起不來。遇到pg_xlog爆滿時,先備份一部分pg_xlog日志到其他地方,刪掉較早時間的日志,等有一定磁盤空間后再嘗試啟動數(shù)據(jù)庫,然后設置合適的參數(shù)值,最后修復問題。

到此這篇關于openGauss數(shù)據(jù)庫pg_xlog爆滿問題解決的文章就介紹到這了,更多相關openGauss數(shù)據(jù)庫pg_xlog爆滿內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • DataGrip 連接 HiveServer2 報錯的問題

    DataGrip 連接 HiveServer2 報錯的問題

    這篇文章主要介紹了DataGrip 連接 HiveServer2 報錯的問題,本文通過圖文實例相結合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • 數(shù)據(jù)庫sql查詢性能優(yōu)化詳解

    數(shù)據(jù)庫sql查詢性能優(yōu)化詳解

    這篇文章主要介紹了數(shù)據(jù)庫sql查詢性能優(yōu)化詳解,查詢優(yōu)化的本質是讓數(shù)據(jù)庫優(yōu)化器為SQL語句選擇最佳的執(zhí)行計劃,對于大型的應用系統(tǒng),大量的數(shù)據(jù)當然需要效率最快的執(zhí)行語句,需要的朋友可以參考下
    2023-07-07
  • 數(shù)據(jù)庫正規(guī)化和設計技巧

    數(shù)據(jù)庫正規(guī)化和設計技巧

    數(shù)據(jù)庫正規(guī)化和設計技巧...
    2007-06-06
  • Doris Join 優(yōu)化原理文檔詳解

    Doris Join 優(yōu)化原理文檔詳解

    這篇文章主要為大家介紹了Doris Join 優(yōu)化原理文檔詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • 關于SQL注入中文件讀寫的方法總結

    關于SQL注入中文件讀寫的方法總結

    這篇文章主要給大家介紹了關于SQL注入中文件的讀寫方法,文中通過示例代碼介紹的非常詳細,相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-03-03
  • eXtremeDB 6.0正式發(fā)布:提高擴展性和分布式查詢速度

    eXtremeDB 6.0正式發(fā)布:提高擴展性和分布式查詢速度

    這篇文章主要介紹了eXtremeDB 6.0正式發(fā)布:提高擴展性和分布式查詢速度,本文詳細介紹了全新的eXtremeDB 6.0的一些特性,需要的朋友可以參考下
    2014-10-10
  • sql中l(wèi)eft join的效率分析與提高效率方法

    sql中l(wèi)eft join的效率分析與提高效率方法

    網(wǎng)站隨著數(shù)據(jù)量與訪問量越來越大,訪問的速度變的越來越慢,于是開始想辦法解決優(yōu)化速度慢的原因,下面是對程序中一條sql的分析與提高效率的過程
    2018-03-03
  • 數(shù)據(jù)庫的四種隔離級別

    數(shù)據(jù)庫的四種隔離級別

    今天小編就為大家分享一篇關于數(shù)據(jù)庫的四種隔離級別,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • 從零開始用DataGrip的安裝及使用教程

    從零開始用DataGrip的安裝及使用教程

    這篇文章主要介紹了從零開始用DataGrip的安裝以及使用,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • Sql Server 和 Access 操作數(shù)據(jù)庫結構Sql語句小結

    Sql Server 和 Access 操作數(shù)據(jù)庫結構Sql語句小結

    Sql Server 和 Access 操作數(shù)據(jù)庫結構Sql語句小結...
    2007-06-06

最新評論