91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PostgreSQL邏輯備份恢復--pg_dump導出及psql導入案例

發布時間:2020-07-14 19:10:08 來源:網絡 閱讀:1454 作者:yzs的專欄 欄目:數據庫

數據庫導入導出是最常用的功能之一。PostgreSQL的備份工具可以使用pg_dump及pg_dumpall。可以通過pg_dump --help獲取其使用方法。這里不對其做過多介紹。主要介紹在使用pg_dump及恢復過程中遇到的一個問題。

1、問題
使用pg_dump -c導出后,通過psql導入時報下面的錯誤:

ERROR:  relation "t1" already exists
ERROR:  duplicate key value violates unique constraint "t1_pkey"
ERROR:  multiple primary keys for table "t1" are not allowed

2、導入導出的操作

pg_dump -U postgres -d yzs -Fa -c -C -f all.sql
psql < all.sql

3、問題分析
1)通過-c導出時在重建database前先drop
2)通過-C導出時導出時導出create database語句
3)每次導入時,雖然庫中已有導入的表結構和部分數據,及先執行drop database語句清空,應該不會出現表已存在等錯誤,但是這種錯誤確實出現了。原來,在導入時,只要已有連接連著這個database,drop語句就不會執行成功,導致清理數據庫失敗,后續執行對應語句時會報已存在、重復鍵、多個主鍵等錯誤。
4、解決方法
1)pg_dump導出時,沒有選項使導出的語句中帶if not exists,不能使之不存在時再創建或插入。
2)保證沒有業務連接數據庫時才導入,或向一個干凈的數據庫進行導入

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台中县| 嵊州市| 满洲里市| 石屏县| 望城县| 奎屯市| 天峨县| 镇坪县| 沙湾县| 武乡县| 兰州市| 奈曼旗| 林周县| 桂阳县| 兴仁县| 寻乌县| 闸北区| 梅河口市| 白山市| 台东市| 中超| 六安市| 嘉峪关市| 修文县| 丰宁| 丰都县| 馆陶县| 青浦区| 高陵县| 安远县| 华池县| 邢台市| 弋阳县| 庄浪县| 栾城县| 交城县| 余姚市| 漳州市| 永康市| 南京市| 康保县|