看板 Database 關於我們 聯絡資訊
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