我有一个 localhost MySQL服务器(wamp),我有一个在线MySQL服务器。 问题是我想将一个表从在线服务器备份到我的本地服务器(在现有表之间复制数据)。
我尝试使用mysqldump
,但我没有结果
<?php
exec("mysqldump --host=onlinehost --user=username --password=password dbname table \
| mysql --host=localhost --user=root --password= dblocalname");
?>
答案 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);
?>
您可以转储数据库并转储转储文件。上面的示例脚本,创建转储并从Web浏览器自动下载:
方式,您可以将在线mysql的备份程序用于本地数据库。
您可以使用crons创建一个Windows服务,以便从在线数据库到本地数据库进行备份。