细节
-
错误
-
状态: Done">完成
-
高
-
解决方法: 固定
-
3.2.1之上
-
没有一个
-
3.
-
平台冲刺27
-
是的
-
是的
描述
启动:https://bugs.launchpad.net/雷竞技下载官网percona-toolkit/+bug/1697915
你好。
今天我用pt-online-schema-change修改了我的一个表(用户)
我的数据库的一个表(user_comments)有一个指向users表的外键。
我把id列从int型改为bigint型
但在最后,当它想要重命名新表到原始表时,显示以下消息:
更新外键约束错误:2017-06-14T10:17:41 DBD::mysql::db做failed:重命名时出错”。/ myblog _users_new”来”。/ myblog /用户的(errno: 150外键约束形成不正确) [为声明重命名表myblog。' _users_new ' TO ' myblog ' . ' users ' "/usr/bin/pt-online-schema-change line 10700。
我知道这是什么,我知道首先我必须改变user_comments表或删除外键在改变用户表,但我认为pt-online-schema-change有bug,因为它应该保持新的表。
这是完全的命令:
Pt-online-schema-change -uxxxx -pxxxx——max-load“Threads_running = 400”——set-vars=foreign_key_checks=0——alter-foreign-keys-method=auto——no-check-alter——critical-load=“Threads_running = 200”——改变=“更改列id id BIGINT UNSIGNED NOT NULL FIRST”D = myblog t =用户——执行
之前osc:
Mysql >显示测试中的表+----------------+ | Tables_in_test | +----------------+ | user_comments | |用户 | +----------------+ 2行集(0.00秒)
后获取错误:
Mysql >显示测试中的表+----------------+ | Tables_in_test | +----------------+ | user_comments | +----------------+ 1行集(0.00秒)
MariaDB版本:mariadb-galera-10.0.30
版本:3.0.3
见所附程序加载样例数据
附件
问题的链接
- 是由
-
pt - 735删除旧表和新表
- Done">完成