mysql如何修改表结构

mysql如何修改表结构,第1张

Online DDL 工具:pt-osc

对于 MySQL Online DDL 目前主流的有三种工具:

原生 Online DDL;

pt-osc(online-schema-change),

gh-ost

本文主要讲解 pt-online-schema-change 的使用以及三种工具的简单对比。

一、原理及限制

1.1 原理

1. 创建一个与原表结构相同的空表,表名是 _new 后缀;

2. 修改步骤 1 创建的空表的表结构;

3. 在原表上加三个触发器:delete/update/insert,用于 copy 数据过程中,将原表中要执行的语句在新表中执行;

4. 将原表数据以数据块(chunk)的形式 copy 到新表;

5. rename 原表为 old 表,并把新表 rename 为原表名,然后删除旧表;

6. 删除触发器。

在我第N次忘记如何查看表结构后,在网上查了一下后,看到有好几种查看表结构的方式,总结一下。

以student(sid,sname,birthday,sex)的查看为例。

【方式一】:desc student

语法:desc 表名---------------------用于查看表整体结构

【方式二】:describe student

语法:describe 表名---------------------用于查看表整体结构;

【方式三】:show columns from student

语法:show columns from 表名--------------------------用于查看表整体结构;

【方式四】:show create table student

语法:show create table 表名--------------------------用于查看表整体结构;

【方式五】:show full fields from student

语法:show full fields from 表名--------------------------------- 用于查看表整体结构

【方式六】:show fields from student

语法:show fields from 表名----------------------------用于查看表整体结构;

【方式七】:desc student sname

语法:desc 表名 成员名--------------------------------用于查询表中的一部分;

【方式八】:show index from student

语法:show index from 表名------------------------------------用于查看表局部结构;这种显示不是很直观,也不是可以完全显示所有信息。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6103708.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存