【发布时间】:2014-08-17 13:10:21
【问题描述】:
我们有一个系统,每个部门都有一个数据库,目前我们有 20 多个部门。
所以当我们必须更新/删除/更改/新表时,我们必须扔掉所有这些数据库并运行查询。
有时人们不遵守程序(总是?),我们最终会得到没有更新的结构。
我正在寻找一种无需使用 bash 或外部脚本即可在所有数据库上进行相同查询的方法。
所以这是我找到的一些东西:
CALL FOR EACH("SELECT databases WHERE `DATABASE` LIKE 'division_%'" , ${1});
我可以在 ${1} 中输入查询
或者这个(不那么动态):
call $('{a, b}' , 'ALTER TABLE division_${1}.caching ADD COLUMN notes VARCHAR(4096) CHARSET utf8'');
但这给了我“未选择数据库”
关于如何处理这种情况的任何想法?
【问题讨论】:
-
这里不是一个有用的响应,但如果它们是同一个系统的一部分,这应该是同一个数据库。稍微有用的回复,如果您查看准备好的语句,它们可能会对您有所帮助(dev.mysql.com/doc/refman/5.6/en/…)
-
@Simonatmso.net 我同意......我们从另一家公司得到了这个漂亮的项目......无论如何它有利有弊(很多条目 650k+ / 表).. 很快就会发布解决方案我找到了。
标签: mysql multiple-databases dynamic-queries