Chinaunix
标题:
有没有好的办法比对同一个库下两个表的机构
[打印本页]
作者:
stupid_lee
时间:
2017-02-26 15:58
标题:
有没有好的办法比对同一个库下两个表的机构
情景是这样的
一个库下面会有一个table表
程序会不定时创建一个talbe_[n]表,程序里写死了创建table_1的建表语句,就是最原始的table表
但table表会不定时更新表结构,导致table_[n]表们也需要同步更新
不知道有什么好的办法没
作者:
moperyblue
时间:
2017-02-26 17:52
table_[n]表们数据量大吗? 表数据要保留吗?
作者:
stupid_lee
时间:
2017-02-26 17:54
回复
2#
moperyblue
表数据肯定是要保留的,n的数字在1~100之内
作者:
moperyblue
时间:
2017-02-26 18:22
回复
3#
stupid_lee
table表结构是你这边维护吗? 如果不是 只能定时比较table表和table_1的表结构 如果发现表结构不一致 则
1.备份table_1数据
2.按table表结构重新建新表table_1
3.将table_1备份表的数据复制到新表table_1
作者:
stupid_lee
时间:
2017-02-26 18:42
回复
4#
moperyblue
就是很蛋疼,这样搞步骤就很多了
作者:
moperyblue
时间:
2017-02-26 19:09
回复
5#
stupid_lee
没办法 是比较麻烦 希望有更便捷的方案出现
作者:
seesea2517
时间:
2017-02-27 16:15
回复
1#
stupid_lee
如果说只需要管最新创建的表是最新的table表结构的话,程序里的语句改为以 table 表为标准而不是固定的建表语句应该是比较方便的方法,有一个 create table like 的语句可以参考一下。
作者:
chengchow
时间:
2017-02-27 18:16
用触发器做
作者:
hello_ketty
时间:
2017-03-12 21:04
可以监听table 表的binlog ,将binlog中直行alter table 的语句在分表中同步直行即可
作者:
lyhabc
时间:
2017-04-27 16:50
回复
9#
hello_ketty
监听binlog不太实际,如果数据库压力非常大,binlog文件很多
作者:
chenfeng
时间:
2017-08-11 16:21
可以试试MySQL管理工具MySQL Utilities的mysqldiff
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2