作者s9714635 (Blueeyes)
看板Database
標題[問題] MySQL的dump有重覆資料?
時間Sun May 3 10:36:54 2015
Hi 大家好:
現行想將DB的資料用兩段式的方式轉移至另外一個新的DB裡,卻碰到一個難題。
想將DB裡(DB_1)的所有Table和資料分別dump出來,並分別匯入至另外的DB(DB_2)。
因此進行以下語法…
Step 1. 將DB_1的表格結構進行匯出
mysqldump -d -u root -pPassword DB_1 > DB_Structure.sql
Step 2. 將DB_1的純資料進行匯出
mysqldump -u root -pPassword DB_1 --no-create-info --skip-triggers > DB_File.sql
Step 3. 建新DB_2資料庫
mysql -u root -pPassword -e 'create database if not exists DB_2';
Step 4. 將DB_1的表格結構匯入至DB_2
mysql -u root -pPassw0rd DB_2 < DB_Structure.sql
Step 5. 將DB_1的資料匯入至DB_2
mysql -u root -pPassw0rd Neal_Test < DB_File.sql
但是進行Step 5. 匯入後會出現失敗的訊息
ERROR 1062 (23000) at line 970: Duplicate entry '000112' for key 'PRIMARY'
Q1. 請問為何Step 5.會有重覆的Key呢?
Q2. 若將Step 5.語法加入force的參數,則DB會忽略該狀況,但是兩邊的資料匯入完卻會筆數不一致啊! (怒)
這又是為什麼呢?
mysql -u root -pPassw0rd DB_2 --force < DB_File.sql
謝謝大家的幫忙...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.184.131.51
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1430620617.A.96E.html
→ gname: 加個 --default-character-set=utf8 試試... 05/04 08:28
→ NioTW: 看結構中有沒有 auto_increment ,是不是0 05/06 00:06