作者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://webptt.com/cn.aspx?n=bbs/Database/M.1430620617.A.96E.html
1F:→ gname: 加个 --default-character-set=utf8 试试... 05/04 08:28
2F:→ NioTW: 看结构中有没有 auto_increment ,是不是0 05/06 00:06