Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
改变多个数据库的PHP脚本_Php_Database - Fatal编程技术网

改变多个数据库的PHP脚本

改变多个数据库的PHP脚本,php,database,Php,Database,我只是想知道是否存在一个php脚本 1-设置mysql连接(主机、用户、密码) 2-直观地选择要更改的数据库 3-设置sql语句(来自.sql文件或web表单上的文本) 4-在所有选定数据库上执行指定的sql语句 要解决的问题:我在同一台服务器上有+100个结构相同的数据库,在每个数据库上执行一个简单的“ALTER TABLE”是一项枯燥/耗时的任务,我目前正在使用phpMyAdmin手动执行此操作,但是我知道存在一种更好的方式。我想你指的是phpmyadmin我不确定什么样的预制脚本可能存在,

我只是想知道是否存在一个php脚本

1-设置mysql连接(主机、用户、密码)

2-直观地选择要更改的数据库

3-设置sql语句(来自.sql文件或web表单上的文本)

4-在所有选定数据库上执行指定的sql语句


要解决的问题:我在同一台服务器上有+100个结构相同的数据库,在每个数据库上执行一个简单的“ALTER TABLE”是一项枯燥/耗时的任务,我目前正在使用phpMyAdmin手动执行此操作,但是我知道存在一种更好的方式。

我想你指的是
phpmyadmin
我不确定什么样的预制脚本可能存在,但你是在看一个一次性的东西,不是吗?为什么不写个剧本呢

它看起来像这样(伪代码)


Phpmyadmin是一个非常直观的工具。@JanL,请检查更新的问题c:@Nanne,请填写姓名或链接??n、 你能不能写一些php,它会获取所有数据库的列表并运行一个循环,让它们进行更改?@TomChew headMillard,是的!我可以这样做,这就是我想要的,但是,我想可能脚本已经存在了……事实上,我使用phpMyAdmin实现了这项工作,但是当我有100个具有相同结构的数据库时,在每个数据库上执行一个简单的“ALTER TABLE”是一项无聊/耗时的任务。-。是的,我可以这样做,但如果已经存在专业脚本,我想测试他,我不认为你会找到“专业剧本”。也许有mysql客户端可以做到这一点,但如果您正在寻找一个脚本,您会得到这个。您知道除了脚本之外,还有其他方法可以连接(比如instance Workbench)?您对它们做过任何研究吗?您可以在进行更改之前使用事务,并在需要时回滚(但是我在这方面的知识有点有限)是的,但是多个数据库之间的事务有点棘手。您可以为每个连接打开一个事务,打开所有连接,启动所有事务,执行所有alter表,如果它们工作,提交所有事务,但对于“简单alter表”,这似乎有点过头了。为这种非常特殊但并不复杂的情况编写自己的脚本比查找和测试现有脚本要省时得多
$yourDatabases = array($database1, $databas2, ....);

foreach($yourDatabases as $database){
    connect($database);
    query("your alter table");
    close($database);
}