PJCHENder 未整理筆記

[PSQL] 匯入練習資料

2018-07-14

@(Database)[SQL]

[PSQL] 匯入練習資料

資料檔

方法一:使用指令匯入資料

  • 下載解壓縮後裡面有一個 dvdrental.tar 檔案即是我們要匯入的檔案,如果使用 MAC 預設的解壓縮程式可能會沒看到 .tar 的檔案,使用「The Unarchiver」解壓縮即可看到此檔案。

  • 若資料庫還沒建立,須先建立資料庫:

  • # createdb 建立 database
    # createdb -O <owner> -E <encoding> <database>
    $ createdb -O pjchender -E utf8 dvdrental
    
    1
    2
    3
    4
    5
    6
    7
    8

    - 使用指令將檔案匯入資料庫:

    ```sh
    # 匯入資料
    # pg_restor -d <database> <restore_file>
    # -c 先清空該 database
    $ pg_restore -c -d dvdrental dvdrental.tar
  • 若匯入的過程中出現錯誤訊息「psql: FATAL: role “postgres” does not exist」,則需要為該 database 新增使用者 postgres 後再重新 pg_restore 一次:

    1
    2
    3
    4
    $ psql dvdrental             # 進入該 database
    \du # 檢視有哪些使用者
    CREATE USER postgres SUPERUSER; # 建立使用者 postgres
    \q # 離開 psql IRB

psql: FATAL: role “postgres” does not exist @ StackOverflow

方法二:使用 pgAdmin 匯入資料

Tags: psql

掃描二維條碼,分享此文章