使用php将表从在线sql server复制到本地服务器

时间:2016-12-18 01:26:41

标签: php mysql

我有一个 localhost MySQL服务器(wamp),我有一个在线MySQL服务器。 问题是我想将一个表从在线服务器备份到我的本地服务器(在现有表之间复制数据)。

我尝试使用mysqldump,但我没有结果

<?php
   exec("mysqldump --host=onlinehost --user=username --password=password dbname table \
   | mysql --host=localhost --user=root --password= dblocalname");
?>

1 个答案:

答案 0 :(得分:1)

如果您想从在线备份到本地mysql服务器,则必须打开一个端口并从本地调制解调器定义静态IP。 (你可以从ISP修改你的IP)。

<?php
$DBUSER="USERNAME";
$DBPASSWD="PASS";
$DATABASE="DBNAME";
$filename = "backup-" . date("d-m-Y") . ".sql.gz";
$mime = "application/x-gzip";

header( "Content-Type: " . $mime );
header( 'Content-Disposition: attachment; filename="' . $filename . '"' );

$cmd = "mysqldump -u $DBUSER --password=$DBPASSWD $DATABASE | gzip --best";
passthru( $cmd );
echo ('Backup Complate !');
exit(0);
?>
  1. 您可以转储数据库并转储转储文件。上面的示例脚本,创建转储并从Web浏览器自动下载:

  2. 方式,您可以将在线mysql的备份程序用于本地数据库。

  3. 您可以使用crons创建一个Windows服务,以便从在线数据库到本地数据库进行备份。