【发布时间】:2012-01-01 02:58:53
【问题描述】:
我想将数据插入到不同用户和不同数据库的其中一个表中。
例如,
第一个数据库
ip:ip1
用户:user1
b:db1
第二个数据库
ip:ip2
用户:用户2
db:db2
所以,我想将第一个数据库的一个表数据插入第二个数据库。
【问题讨论】:
我想将数据插入到不同用户和不同数据库的其中一个表中。
例如,
第一个数据库
ip:ip1
用户:user1
b:db1
第二个数据库
ip:ip2
用户:用户2
db:db2
所以,我想将第一个数据库的一个表数据插入第二个数据库。
【问题讨论】:
你必须做 2 mysql_connect,返回连接。
在您插入数据的mysql_query 中,您必须将引用作为第二个参数
喜欢:
$db2 = mysql_connect('ip1', 'mysql_user', 'mysql_password');
mysql_query ( "INSERT INTO *.....", $db2 )
$db1 = mysql_connect('ip2', 'mysql_user', 'mysql_password');
mysql_query ( "INSERT INTO *.....", $db1 )
如果您使用对象(您应该使用),您只需保存引用并将所有执行的查询传递给它。然后你可以只创建 2 个不同 IP 的 DB 对象。
【讨论】:
【讨论】:
如果您当前的 MySQL 版本是使用 --with-federated-storage-engine 构建的,您可以尝试使用 FEDERATED 存储引擎附加远程表
使用SHOW ENGINES; 查看您的安装是否支持该引擎。
很遗憾,我自己还没有尝试过,无法分享任何经验。
【讨论】:
您可以尝试SQLyog's 'Copy Database to different host/Database' 从一个 MySQL 服务器复制到另一个。选择要复制的数据库,然后选择数据库 -> 将数据库复制到不同的主机/数据库以将数据库(及其表结构的所有或选定项目以及数据)复制到另一个数据库(可能位于另一个主持人)。
【讨论】: