登录vps机器时dump mysql数据库很简单。
1.使用
ssh root@vps_ip
2.将名为wpdatabase的mysql数据库dump到远程机器的/home/test.sql中。
mysqldump -u root -p wpdatabase > /home/test.sql
现在,我可以用 php 从远程机器转储和下载 mysql,用 php 编写登录语句,用 php 下载转储的 mysql 数据库,所有过程都用 php 完成吗?
想想 Adrian Cid Almaguer,我想运行 exec("ssh root@vps_ip");但是如何在exec命令中写密码呢?
man ssh
ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-e escape_char] [-F configfile]
[-I pkcs11] [-i identity_file] [-L [bind_address:]port:host:hostport] [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option]
[-p port] [-R [bind_address:]port:host:hostport] [-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]] [user@]hostname
[command]
不能在ssh中写密码吗?
最佳答案
使用 ssh 连接:
首先从您的控制台安装 sshpass
$ sudo apt-get install sshpass
然后就可以使用这个命令了
$ sshpass -p your_password ssh user@hostname
用php是
<?php
exec("sshpass -p your_password ssh user@hostname");
?>
你可以转储你的数据库:
<?php
exec("mysqldump -uroot -padmin wpdatabase > /home/test.sql");
?>
Note:
root
is he user andadmin
is the password.
引用:
关于php - 如何使用 php 从远程机器转储和下载 mysql?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29836935/