[英]Importing mysql dump
我试图将数据从一台服务器上的一个mysql数据库同步到另一台(与您在一起的位置)。
我有一系列的php脚本来打包数据,将其下载到服务器并解压缩..但是我对通过命令行导入数据并不满意。
我正在运行终端命令
mysql -u dbusername -h blaa.mysql.eu1.frbit.com mypasswordhere database_name </var/www/blaa/sqlfilehere.sql
通过php exec命令。笨'
只是想知道是否有更合理的方法可以通过PHP进行此操作,因此我不必每次都想要手动进行同步。
尝试以下方法:
mysql -u dbusername -h blaa.mysql.eu1.frbit.com -p mypasswordhere database_name < /var/www/blaa/sqlfilehere.sql
要么
mysql -udbusername -hblaa.mysql.eu1.frbit.com -pmypasswordhere database_name < /var/www/blaa/sqlfilehere.sql
取决于实现方式(感谢eKom指出这一点)。 注意在密码前使用-p。 这可能会有所帮助。 否则,mysql命令将您提供的密码用作数据库名称。 (尽管在这种情况下应该会给您一个错误)
尝试这样的事情:
...
$dbhost = "blaa.mysql.eu1.frbit.com";
$dbuser = "dbusername";
$dbpass = 'mypasswordhere';
$dbname = "database_name";
$filename = "/var/www/blaa/sqlfilehere.sql"
system("mysql -h $dbhost -u $dbuser --password='$dbpass' $dbname < $filename");
...
所以我最后去了一个php类,其他人在github上将其放在一起。 哪个工作比我在PHP中做的更快/更好,并且不会搞乱命令行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.