• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

高性能MySql进化论:提速Alter Table

mysql 搞代码 4年前 (2022-01-09) 17次浏览 已收录 0个评论

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 在使用ALTER COLUMN mysql flush status; mysql alter table dictionary – alter column mean set default’DEFAULT2′; Query OK, 0 rowsaffected (0.03 sec) Records: 0 Duplicates: 0 Warnings: 0

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  在使用ALTER COLUMN

  mysql> flush status;

  mysql> alter table dictionary

  -> alter column mean set default’DEFAULT2′;

  Query OK, 0 rowsaffected (0.03 sec)

  Records: 0 Duplicates: 0 Warnings: 0

  mysql> SHOW STATUSWHERE Variab

本文来源gao!%daima.com搞$代*!码9网(

le_name LIKE ‘Handler%’

  -> OR Variable_name LIKE ‘Created%’;

  +—————————-+——-+

  | Variable_name | Value |

  +—————————-+——-+

  |Handler_read_rnd_next | 0 |

  |Handler_savepoint_rollback | 0 |

  | Handler_update | 0 |

  | Handler_write | 0 |

  2 修改frm文件

  通过修改frm文件的方式来提高修改表结构效率的步骤大概如下

  1. 备份相关的数据库文件

  2. 创建一张和旧表完全相同的表结构

  mysql>create table dictionary_new like dictionary;

  3. 执行FLUSH TABLES WITH READ LOCK. 所有的表都被关闭

  mysql> alter table dictionary_new

  -> modify column mean varchar(30)default ‘DEFAULR#’;

  mysql> flush table with read lock;

  5. 把dictionary_new.frm文件重名为dictionary.frm

  6. 执行UNLOCK TABLES

  mysql> unlock tables;

  mysql> insert into dictionary(word) values(’Random’);

  mysql> select * from dictionarywhere word=’Random’;

  从下面的结果可以看出,默认值已经被改掉,且不涉及到内容的改变

  +——–+——–+———-+

  | id | word | mean |

  +——–+——–+———-+

  | 110004 |Random | DEFAULR# |

  +——–+——–+———-+

  7. Drop dictionary_new

[1] [2]


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:高性能MySql进化论:提速Alter Table
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址