Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP mysqldump文件导入_Php_Mysql - Fatal编程技术网

PHP mysqldump文件导入

PHP mysqldump文件导入,php,mysql,Php,Mysql,我想备份我的本地数据库并从live网站导入该数据库。我试过了。请看下面 我的备份代码 <?php $dbhost = "localhost"; $dbuser = "root"; $dbpass = 'password'; $dbname = "database"; $backupfile ='database.sql'; $backupdir = dirname(__FILE__); $source = $backupdir.'/'.$backupfile; system("

我想备份我的本地数据库并从live网站导入该数据库。我试过了。请看下面

我的备份代码

<?php
$dbhost = "localhost"; 
$dbuser = "root";  
$dbpass = 'password'; 
$dbname = "database"; 

$backupfile ='database.sql';
$backupdir = dirname(__FILE__);
$source = $backupdir.'/'.$backupfile;
system("mysqldump -h $dbhost -u $dbuser --password='$dbpass' $dbname  > $backupfile");

?>
<form action="http://www.example.com/restore_database.php" method="post">
    <input type="text" name="backup_file" value="<?php echo $source; ?>"/>
    <input type="submit" />
</form>

假设现场位于ip134.122.12.109
您正在使用UNIX

在本地主机上创建这些文件和
~/backupdir
目录

backup.sh
restore.sh
为什么不使用shell脚本,而不是将这些URL(example.com/restore\u database.php)留给用户使用呢。。。在您的服务器上添加简单脚本以进行备份/还原,或者在本地主机上添加脚本以连接到远程服务器并进行备份/还原。对不起,我是php新手。你能举个例子吗?好的,你能告诉我你想在本地服务器还是实时服务器上进行备份吗?我有一个本地主机应用程序。我想备份数据库并还原到我的live site数据库。这样你就可以访问live site。。。您想将数据备份到实时站点上的目录或本地主机上的目录?1)我的网站托管在共享ip中。2) 我的应用程序运行在wamp 3)上,在我的提问方法中,我只需要单击一下。所有其他进程都将执行jquery。在这种情况下,我建议您使用脚本方法。。。由于您运行windows,您必须知道mysql目录在哪里。以及mysqldump目录的位置。它们可能位于“C:\wamp\bin\mysql\mysql5.1.33\bin\mysqldump.exe”和“C:\wamp\bin\mysql\mysql5.1.33\bin\mysql.exe”中。因此,您必须运行
C:\wamp\bin\mysql\mysql5.1.33\bin\mysqldump.exe-uusername-pPassword database>file.sql
进行备份,并运行
C:\wamp\bin\mysql\mysql5.1.33\bin\mysql.exe-h 134.122.12.109-uliveSiteUsername-pLiveSitePassword database
自己从cmd恢复
<?php
$dbhost = "localhost";
$dbuser = "username";
$dbpass = 'password';
$dbname = "database";
$filename = $_POST['backup_file'];

mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to MySQL server: ' . mysql_error());
mysql_select_db($dbname) or die('Error selecting MySQL database: ' . mysql_error());

$templine = '';
$lines = file($filename);
foreach ($lines as $line) {
    if (substr($line, 0, 2) == '--' || $line == '')
        continue;
    $templine .= $line;
    if (substr(trim($line), -1, 1) == ';') {
        mysql_query($templine) or print('Error performing query \'<strong>' . $templine . '\': ' . mysql_error() . '<br /><br />');
        $templine = '';
    }
}
?>
#!/bin/bash
mysqldump -uusername -pPassword database > ~/backupdir/backupFile.sql
#!/bin.bash
mysql -h 134.122.12.109 -uliveSiteUsername -pLiveSitePassword database < ~/backupdir/backupFile.sql
<?php
$dbhost = "localhost";
$dbuser = "username";
$dbpass = 'password';
$dbname = "database";
$filename = $_POST['backup_file'];
system("mysql -h $dbhost -u $dbuser --password='$dbpass' $dbname < $filename");
?>