是這樣,我要從其他地方讀取50萬條資料插入到PG資料庫。請問我在回圈里,是每個SQL執行后,進行一次commit ,還是所有SQL執行完成后,在commit。
一 :
for item in pool:
sql = """"insert into ..................""
po_cursor.execute(sql)
conn_pg.commit()
二:
for item in pool:
sql = """"insert into ..................""
po_cursor.execute(sql)
conn_pg.commit()
大佬們 可以跟小白科普下嗎
uj5u.com熱心網友回復:
可以分批,比如1000條左右進行一次commituj5u.com熱心網友回復:
50萬條資料一次commmit對資料庫有沖擊么
uj5u.com熱心網友回復:
不會有什么沖擊,但如果50萬條資料一次commit的話,假如有條記錄有問題的,將全部回滾。uj5u.com熱心網友回復:
考慮到PG的MVCC機制和大部分生產庫都開到讀已提交的隔離狀態,沒啥影響,除了wal_log可能空間不夠用。不過50萬條正常也就幾十上百M,可能性不大。轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/16725.html
標籤:PostgreSQL
