next up previous contents
Next: About this document ... Up: Import 匯入 Previous: 資料庫還原   Contents   DYWANG_HOME

實機操作練習題

  1. service.txt
    1. 下載檔案 service.txt
    2. 查詢 service.txt 所屬的資料庫名稱,若其不存在則自行建立。
    3. 將 service.txt 匯入所屬的資料庫。
    4. 使用 mysql -e 命令查詢 service.txt 匯入的資料表所有紀錄,並導向到 /tmp/service.select。
    5. 修改 service.txt 匯入的資料表,再重複上一步驟匯入資料庫,查看資料表是否還原?
  2. service1.txt
    1. 修改 service.txt 內容的資料表名稱為 mnet_service1,並另存新檔 service1.txt。 提示:用搜尋取代方式,將檔案中所有資料表名稱更名。
    2. 再將 service1.txt 匯入所屬的資料庫。
    3. 刪除並移除 service1.txt 資料表中的 primary key 及 auto_increment,才能匯入重複紀錄。
    4. 使用 mysql -e 命令查詢 service1.txt 匯入的資料表,修改後的欄位描述 (desc),並導向到 /tmp/service1.desc。

  3. 匯出:使用語法 SELECT ... INTO OUTFILE 查詢 service1.txt 匯入的資料表,其結果存入檔案。
    1. /tmp/service1a.txt:select *....,不指定任何格式。
    2. /tmp/service1b.txt:指定以符號「<>」做為欄位分隔,以驚嘆號「!」將每個欄位的紀錄括起來,每行以 \n 換行。
  4. 複製並重新命名成資料表名稱,才能使用 mysqlimport 匯入紀錄。
    1. 找到 /tmp/service1a.txt,並複製到目錄 /tmp/1a (目錄自行建立)。
    2. 找到 /tmp/service1b.txt,並複製到目錄 /tmp/1b (目錄自行建立)。
  5. 使用 mysqlimport .. --local,重複匯入紀錄,將匯入命令含參數 (含登入密碼) ,寫成可執行檔。
    1. /tmp/service1a.sh:重複匯入 service1a.txt 中的紀錄。
    2. /tmp/service1b.sh:重複匯入 service1b.txt 中的紀錄。
  6. 完成所有練習後,匯出以下資料庫:
    1. service.txt 所屬的資料庫,存成檔案 /tmp/service.sql。
    2. 所有的資料庫,存成檔案 /tmp/myalldb.sql。



De-Yu Wang 2020-04-07