MySQL Bugs: #34354: Feature request: EXPLAIN ALTER TABLE https://bugs.mysql.com/bug.php?id=34354
MySQL Bugs: #34354: Feature request: EXPLAIN ALTER TABLE https://bugs.mysql.com/bug.php?id=34354
[SQL]EXPLAIN ALTER TABLE `answer` MODIFY COLUMN `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '修改字符集为utf8mb4,兼容表情符' AFTER `qid`;
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ALTER TABLE `answer` MODIFY COLUMN `content` text CHARACTER SET utf8mb4 COLLATE' at line 1
MySQL Bugs: #80793: EXTEND EXPLAIN to cover ALTER TABLE https://bugs.mysql.com/bug.php?id=80793
Bug #34354 Feature request: EXPLAIN ALTER TABLE
Submitted: 6 Feb 2008 17:04
MySQL Bugs: #80793: EXTEND EXPLAIN to cover ALTER TABLE https://bugs.mysql.com/bug.php?id=80793
Bug #80793 EXTEND EXPLAIN to cover ALTER TABLE
Submitted: 18 Mar 2016 16:03
MySQL Bugs: #34354: Feature request: EXPLAIN ALTER TABLE https://bugs.mysql.com/bug.php?id=34354
Description:
In MySQL 5.1, work was done to make some ALTER TABLE operations faster, with no need for a temporary table (such as changes that affect only metadata), as described here: http://dev.mysql.com/doc/refman/5.1/en/alter-table.html However, a user cannot tell in advance whether a given operation will be fast or not, and thus must actually execute ALTER TABLE and hope that it will be fast. An EXPLAIN-style statement would be useful for ALTER TABLE. I envision that EXPLAIN ALTER TABLE would provide information to the user that would indicate the "cost" of a given alteration. How to repeat:
N/A
Thank you for a reasonable feature request.
A duplicate of this bug:
Bug #80793 EXTEND EXPLAIN to cover ALTER TABLE
Description:
ALTER TABLE now has many ways of working and that can be a bit confusing even for a seasoned MySQL DBA especially as things change all the time. How to repeat:
Run ALTER TABLE and see which behaviour happens depending on the statement you execute. There are various possible behaviours: 1. METADATA change, no change to data
2. INLINE change, no full rebuild and apps can use the table while the change is happening (e.g. new indexes being added)
3. TABLE REBUILD, traditional full rebuild of the table Suggested fix:
I'd like to see EXPLAIN EXTENDED to show what it would do with the ALTER TABLE statement. There are other subtle things that may trigger a full rebuild of the table including changes due to data type changes (e.g. the "old" and "new" timestamp or datetime formats), so having a way to see what MySQL would do without actually triggering the action would be really good.
Posted by developer: Reported version value updated to reflect release name change from 5.8 to 8.0
Hello Simon, Thank you for the feature request! Thanks,
Umesh
Duplicate of BUG #34354
MySQL Bugs: #34354: Feature request: EXPLAIN ALTER TABLE https://bugs.mysql.com/bug.php?id=34354的更多相关文章
- alter table导致的mysql事务回滚失败
今天做数据迁移, 发现事务有时候可以回滚, 有时候不可以回滚, 最后一点点调试发现中间有段修改表结构的语句, 最终导致回滚失败. 1.MySQL最常用的两个表类型: InnoDB和MyISAM.MyI ...
- SQL ALTER TABLE 命令
SQL ALTER TABLE 命令 SQL ALTER TABLE 命令用于添加.删除或者更改现有数据表中的列. 你还可以用 ALTER TABLE 命令来添加或者删除现有数据表上的约束. 语法: ...
- alter table <表名 > add constraint <主键名>用法
alter table <表名 > add constraint <主键名>用法介绍 1.主键约束: 要对一个列加主键约束的话,这列就必须要满足的条件就是分空 因为主键约束: ...
- 【转】SQL 语句:Alter table
转载自:http://www.w3school.com.cn/sql/sql_alter.asp ALTER TABLE 语句 ALTER TABLE 语句用于在已有的表中添加.修改或删除列. SQL ...
- alter table add constraint 用法
1.主键约束: 要对一个列加主键约束的话,这列就必须要满足的条件就是分空 因为主键约束:就是对一个列进行了约束,约束为(非空.不重复) 以下是代码 要对一个列加主键,列名为id,表名为emp 格式 ...
- alter table添加表约束
翻阅了一下网上关于alter table添加表约束的资料,学习下,然后供自己以后使用. 仅仅供自己使用... 总结alter table ### add constraint ## 使用方法 添加表约 ...
- alter table *** add constraint *** 用法---约束
1.主键约束:要对一个列加主键约束的话,这列就必须要满足的条件就是分空因为主键约束:就是对一个列进行了约束,约束为(非空.不重复)以下是代码 要对一个列加主键,列名为id,表名为emp 格式为:a ...
- 在linux上安装MySQL数据库,并简单设置用户密码,登录MySQL
在新装的Centos系统上安装MySQL数据库. <p><a href="http://www.cnblogs.com/tijun/">提君博客原创< ...
- 《MySQL必知必会》学习笔记——附录A MySQL入门
附录A MySQL入门 如果你是MySQL的初学者,本附录是一些需要的基础知识. A.1 你需要什么 为使用MySQL和学习本书中各章的内容,你需要访问MySQL服务器和客户机应用(用来访问服务器的软 ...
随机推荐
- Windows 上 GitHub Desktop 的操作[转]
第1章 上传开源代码至GitHub 1 1.1 git Windows 客户端 1 1.2 注册GitHub账户 2 1.3 登录 2 1.4 创建本地代码仓库 2 1. ...
- php如何解决多线程同时读写一个文件的问题
<?php header("content-type:text/html;charset=utf-8"); $fp = fopen("lock.txt", ...
- 【java】java内存模型 (1)--基础
并发编程模型的分类 在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体).通信是指线程之间以何种机制来交换信息.在命令式编程中,线程之间的通信 ...
- 深入volley(三)自己来写volley
https://github.com/Smalinuxer/android-SpillOver 这是我自己写的一个请求缓存框架,基于volley的,沿袭了volley的架构与设计思想,而对其进一步的封 ...
- Windows7安装Mongodb
1.安装mongodb-win32-x86_64-3.0.4-signed.msi 2.安装kb2731284 安装补丁:Windows6.1-KB2731284-v3-x64.msu 3.创建数据库 ...
- docker tag 详解
docker tag 用于给镜像打标签,语法如下: docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG] ① 比如我现在有一个 centos 镜像: [ro ...
- php检测文件只读、可写、可执行权限
例子:检测文件是否可读.可写.可执行. 复制代码代码示例: <?php $myfile = "./test.txt"; if (is_readable ($myfile)) ...
- 《转》python学习(4)对象
转自http://www.cnblogs.com/BeginMan/p/3160044.html 一.学习目录 1.pyhton对象 2.python类型 3.类型操作符与内建函数 4.类型工厂函数 ...
- Android英文文档翻译系列(1)——AlarmManager
原文:个人翻译,水平有限,欢迎看官指正. public class Ala ...
- c++11——tuple元组
tuple是一个固定大小的不同类型值的集合,是泛化的 std::pair.可以当做一通用的结构体使用,不需要创建结构体而又获取结构体的特征,在某些情况下可以取代结构体,使程序简洁.直观. 创建tupl ...