尝试将MySQL转储导入新数据库时出错

时间:2017-02-13 18:26:31

标签: php mysql sql database

当我尝试将数据库转储从旧服务器导入新服务器时,我收到以下错误。

  

第53行的错误1075(42000):表定义不正确;有可以   只有一个自动列,必须将其定义为键

SQL转储文件正在尝试ALTER这样的表(位于文件底部):

--
-- Indexes for table `b4ofk_akeeba_common`
-- ALTER TABLE `b4ofk_akeeba_common`   ADD PRIMARY KEY (`key`);

--
-- Indexes for table `b4ofk_ak_profiles`
-- ALTER TABLE `b4ofk_ak_profiles`   ADD PRIMARY KEY (`id`);

--
-- Indexes for table `b4ofk_ak_stats`
-- ALTER TABLE `b4ofk_ak_stats`   ADD PRIMARY KEY (`id`),   ADD KEY `idx_fullstatus` (`filesexist`,`status`),   ADD KEY `idx_stale` (`status`,`origin`);

--
-- Indexes for table `b4ofk_ak_storage`
-- ALTER TABLE `b4ofk_ak_storage`   ADD PRIMARY KEY (`tag`);

--
-- Indexes for table `b4ofk_assets`
-- ALTER TABLE `b4ofk_assets`   ADD PRIMARY KEY (`id`),   ADD UNIQUE KEY `idx_asset_name` (`name`),   ADD KEY `idx_lft_rgt` (`lft`,`rgt`),  ADD KEY `idx_parent_id` (`parent_id`);

这就是我导入文件的方式:

mysql -u root -p DB < /var/FILE.sql

每次导入失败并抛出相同的错误。我做错了什么?

修改

第53行

DROP TABLE IF EXISTS `b4ofk_ak_profiles`;
CREATE TABLE `b4ofk_ak_profiles` (
  `id` int(10) UNSIGNED NOT NULL auto_increment,
  `description` varchar(255) NOT NULL,
  `configuration` longtext,
  `filters` longtext,
  `quickicon` tinyint(3) NOT NULL DEFAULT '1'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

0 个答案:

没有答案