2015-05-25 44 views
0

当我尝试插入MariaDB 10.0.19上的Mroonga表时,我一直在获取重复的主键错误。有谁知道可能是什么原因?Mariadb上的Mroonga主键插入错误

SQL:

insert into tbl_mroonga select pk_id, keyword from tbl_inno; 

创建表:

create table tbl_mroonga (
    'PK_ID' int(11) not null default 0, 
    'Keyword' varchar(191) null default null, 
    primary key (`pk_id`), 
    fulltext index ('keyword')) Engine=MROONGA; 

    create table tbl_inno (
    'PK_ID' int(11) not null default 0, 
    'Keyword' varchar(191) null default null, 
    primary key (`pk_id`), 
    fulltext index ('keyword')) Engine=INNODB; 

我插入来自tbl_inno约350万行tbl_mroonga,它在大约400K行失败。我用“select distinct”和“group by pk_id”尝试过它,但仍然失败。

任何帮助将不胜感激!

谢谢。

+0

此链接可以帮助:https://mariadb.com/kb/en/mariadb/auto_increment/ – Michas

+0

'主要Key'是不同的/独特,'选择distinct'&'通过pk_id'组不会有任何效果。 1 - 尝试使用'Engine = MROONGA'创建一个新表格。 2 - 或者看看'ON DUPLICATE KEY UPDATE tbl_mroonga.keyword = tbl_inno.keyword'词组是否有帮助。 PS:我没有亲自与MROONGA交流。 – SparKot

+0

'mysqld.err'中是否有相关的内容? –

回答

0

写一个循环,一次复制10K行。每块后

INSERT INTO tbl_mroonga 
SELECT pk_id, keyword 
    FROM tbl_inno 
    WHERE pk_id > 120000 
     AND pk_id <= 130000 

COMMIT:使用类似(第13块的例子)。