我在服务器上有一个相当小的MySQL数据库(Textpattern安装),我没有SSH访问权限(我只有FTP访问权限).我需要定期将实时数据库下载到我的本地开发服务器; 即,我想运行一个脚本和/或运行一个cron作业.有什么好方法可以做到这一点?
有些要点需要注意:
Live服务器运行Linux,Apache 2.2,PHP 5.2和MySQL 4.1
本地服务器运行相同(因此使用PHP是一个选项),但操作系统是Windows
本地服务器上有Ruby(因此使用Ruby是一个有效的选项)
实时MySQL数据库可以接受来自不同IP的远程连接
我无法在远程服务器上启用复制
更新:我接受了BlaM的回答; 它非常简单.简直不敢相信我没想到.但是有一个问题:我想自动化该过程,但建议的解决方案会提示用户输入密码.以下是传递密码的mysqldump命令的略微修改版本:
mysqldump -u USER --password=MYPASSWORD DATABASE_TO_DUMP -h HOST > backup.sql
由于您可以远程访问数据库,因此可以使用Windows机器中的mysqldump来获取远程数据库.从命令行:
cd "into mysql directory" mysqldump -u USERNAME -p -h YOUR_HOST_IP DATABASE_TO_MIRROR >c:\backup\database.sql
程序将询问您是否有数据库密码,然后生成一个文件c:\ backup\database.sql,您可以在Windows机器上运行该文件以插入数据.
使用一个应该相当快的小型数据库.