首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysqldump将主键更改为唯一键?

mysqldump将主键更改为唯一键?
EN

Database Administration用户
提问于 2019-05-24 19:46:25
回答 1查看 199关注 0票数 1

在尝试在MySQL中转储和恢复WordPress数据库时,我注意到mysqldump似乎正在将多个表上的PRIMARY KEY改为UNIQUE KEY。例如,以下表格:

代码语言:javascript
复制
mysql> describe wp_yoast_seo_meta;
+---------------------+---------------------+------+-----+---------+-------+
| Field               | Type                | Null | Key | Default | Extra |
+---------------------+---------------------+------+-----+---------+-------+
| object_id           | bigint(20) unsigned | NO   | PRI | NULL    |       |
| internal_link_count | int(10) unsigned    | YES  |     | NULL    |       |
| incoming_link_count | int(10) unsigned    | YES  |     | NULL    |       |
+---------------------+---------------------+------+-----+---------+-------+

被倾倒为:

代码语言:javascript
复制
CREATE TABLE `wp_yoast_seo_meta` (
  `object_id` bigint(20) unsigned NOT NULL,
  `internal_link_count` int(10) unsigned DEFAULT NULL,
  `incoming_link_count` int(10) unsigned DEFAULT NULL,
  UNIQUE KEY `object_id` (`object_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

注意,object_id字段用于创建UNIQUE_KEY索引,而不是设置为PRIMARY KEY。除了指定主机名和用户名之外,我不会对mysqldump使用任何特殊的选项。

如何让mysqldump包含主键?

EN

回答 1

Database Administration用户

回答已采纳

发布于 2019-05-24 21:22:01

在MyISAM中,PRIMARYUNIQUE之间没有实现上的区别。(我不知道它为什么会这么做。)

您应该升级到InnoDB。

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/239020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档