成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

pg運(yùn)維踩坑記

IT那活兒 / 2184人閱讀
pg運(yùn)維踩坑記


一. 殺會(huì)話


都知道可以通過(guò)數(shù)據(jù)庫(kù)查到pid,然后kill -9就可以強(qiáng)制殺會(huì)話了,如果用Oracle和MySQL的認(rèn)知做pg數(shù)據(jù)庫(kù)的操作,那就大錯(cuò)特錯(cuò)了。


kill -9的危害
Pg 看到一個(gè)被支持的被終止kill -9。它知道后端可能已經(jīng)損壞了共享內(nèi)存——例如,因?yàn)槟憧梢栽趯㈨?yè)面寫(xiě)入 shm 或修改頁(yè)面的過(guò)程中中斷它——所以當(dāng)它注意到后端突然消失時(shí),它會(huì)終止并重新啟動(dòng)所有其他后端并以非零錯(cuò)誤代碼退出。

正確的方法是通過(guò)下列2種方式殺進(jìn)程

1. 庫(kù)里調(diào)用存儲(chǔ)過(guò)程

可以根據(jù)pg_stat_activity的幾個(gè)字段找到需要?dú)⒌舻臅?huì)話


通過(guò)SELECT pg_terminate_backend(pid)可以殺掉想要的會(huì)話。
yxptest=# SELECT pg_terminate_backend(38531);

會(huì)話端會(huì)出現(xiàn)如下界面


2. 庫(kù)外使用pg_ctl命令

pg_ctl kill       SIGNALNAME PID

SIGNALNAME 的含義


千萬(wàn)不要kill -9?。?!


二. 刪用戶


pg建用戶很簡(jiǎn)單,和我們經(jīng)常操作的一樣,但是刪除的時(shí)候,可能讓很多人頭疼不已,因?yàn)闀?huì)報(bào)很多依賴關(guān)系的錯(cuò)誤。

有一個(gè)方式可以把用戶的依賴全部刪除,相應(yīng)的后果就是用戶相關(guān)的對(duì)象一并刪除,屬于高危操作。

下面我建一個(gè)簡(jiǎn)單用戶和一個(gè)測(cè)試表

yxptest=# create user test ENCRYPTED password Hb_bss2021;
yxptest=# c yxptest
yxptest=# create schema test authorization test;
yxptest=# create table t1(id int);

這里我們可以看到schema和talbe的owner都是test。

我們做下刪除操作

yxptest=> c yxptest root
yxptest=# drop user test;

這樣的刪除操作,是會(huì)報(bào)依賴關(guān)系的錯(cuò)誤。

常規(guī)辦法,是一個(gè)個(gè)解除依賴,但是pg有個(gè)快速的方法,如下所示

yxptest=# drop owned by test cascade;
yxptest=# drop user test;

這樣的方法雖然省事,但是有個(gè)致命的問(wèn)題,我們需要知道。

drop owned by test cascade 會(huì)把所有對(duì)象的owner是test的刪除,包括數(shù)據(jù)之類的。

這點(diǎn)我們需要再三確認(rèn),如果不是很確定,可以先做一個(gè)如下操作。

yxptest=# REASSIGN OWNED BY test TO root;
yxptest=# drop user test;

這樣可以確保這個(gè)用戶下的對(duì)象的保留。

運(yùn)維的坑總會(huì)不經(jīng)意間出現(xiàn),記得填好自己。


END


更多精彩干貨分享

點(diǎn)擊下方名片關(guān)注

IT那活兒

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/129804.html

相關(guān)文章

  • webpack4 坑記

    最近偶然想學(xué)習(xí)下webpack的配置,于是走上了webpack4踩坑的不歸路。。。 webpack4默認(rèn)的特性: 配置默認(rèn)初始化一些配置, 比如 entry 默認(rèn) ./src 開(kāi)發(fā)模式和發(fā)布模式, 插件默認(rèn)內(nèi)置 CommonsChunk 配置簡(jiǎn)化 使用 ES6 語(yǔ)法,比如 Map, Set, includes 新增 WebAssembly 構(gòu)建支持 如果要使用 webpack cli 命令,...

    lookSomeone 評(píng)論0 收藏0
  • react使用坑記(一)

    摘要:本文主要介紹在移動(dòng)端項(xiàng)目中如何使用及其配置使用腳手架生成的項(xiàng)目,后運(yùn)行彈出配置項(xiàng),該命令不可逆哦。使用了作為計(jì)算依據(jù),因此需要在中貼上以下代碼,并沒(méi)有使用淘寶的方案使用的設(shè)計(jì)圖是的哦配置的按需加載當(dāng)然了,你需要先。 本文主要介紹在react移動(dòng)端項(xiàng)目中如何使用antd-mobile2及其配置 使用 create-react-app腳手架生成的項(xiàng)目,后運(yùn)行npm run eject 彈出...

    toddmark 評(píng)論0 收藏0
  • react使用坑記(一)

    摘要:本文主要介紹在移動(dòng)端項(xiàng)目中如何使用及其配置使用腳手架生成的項(xiàng)目,后運(yùn)行彈出配置項(xiàng),該命令不可逆哦。使用了作為計(jì)算依據(jù),因此需要在中貼上以下代碼,并沒(méi)有使用淘寶的方案使用的設(shè)計(jì)圖是的哦配置的按需加載當(dāng)然了,你需要先。 本文主要介紹在react移動(dòng)端項(xiàng)目中如何使用antd-mobile2及其配置 使用 create-react-app腳手架生成的項(xiàng)目,后運(yùn)行npm run eject 彈出...

    _ang 評(píng)論0 收藏0
  • sessionStorge和localStorage的使用-坑記_09

    摘要:的使用屬性允許你訪問(wèn)一個(gè)對(duì)象。它與相似,不同之處在于里面存儲(chǔ)的數(shù)據(jù)沒(méi)有過(guò)期時(shí)間設(shè)置,而存儲(chǔ)在里面的數(shù)據(jù)在頁(yè)面會(huì)話結(jié)束時(shí)會(huì)被清除。頁(yè)面會(huì)話在瀏覽器打開(kāi)期間一直保持,并且重新加載或恢復(fù)頁(yè)面仍會(huì)保持原來(lái)的頁(yè)面會(huì)話。 sessionStorge的使用 sessionStorage 屬性允許你訪問(wèn)一個(gè) session Storage 對(duì)象。它與 localStorage 相似,不同之處在于 lo...

    Jochen 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<