我需要一种方法,可以轻松地将MySQL表中的数据从远程服务器导出然后导入到我的家庭服务器。我没有直接访问服务器的权限,没有安装任何实用程序,例如phpMyAdmin。但是,我确实可以将PHP脚本放在服务器上。
我如何获得数据?
我问这个问题纯粹是为了记录我的做事方式
您可以为此使用SQL:
$file = 'backups/mytable.sql'; $result = mysql_query("SELECT * INTO OUTFILE '$file' FROM `##table##`");
然后,只需将浏览器或FTP客户端指向目录/文件(backups / mytable.sql)。这也是进行增量备份的好方法,例如,给文件名加上时间戳。
要将其从该文件恢复到数据库中,可以使用:
$file = 'backups/mytable.sql'; $result = mysql_query("LOAD DATA INFILE '$file' INTO TABLE `##table##`");
另一个选择是使用PHP在服务器上调用系统命令并运行’mysqldump’:
$file = 'backups/mytable.sql'; system("mysqldump --opt -h ##databaseserver## -u ##username## -p ##password## ##database | gzip > ".$file);