2013-11-15 39 views
0

我尝试了下面的代码来备份我的数据库“db_school”。使用php脚本的mysql转储

<?php 
    shell_exec('mysqldump -u root -h localhost db_school > backup-file.sql'); 
?> 

创建名为“backup-file.sql”的新文件,但问题是它完全是空的。以下是我的数据库表:

------------------------------------- 
id | school_name | city 
------------------------------------- 
1 | cp school  | New York 
2 | public school | San Fracisco 
------------------------------------- 

注:我的“根”用户没有密码 我知道有关于这个主题的多个职位,但每次提出类似于上面

+0

可能会出现一些错误,并且不会在任何地方捕获,您可以在命令中尝试2>&1,甚至可以回显命令的输出。 –

+0

该命令在shell中运行成功,甚至我试图打印输出,但它是空的 – Adwait

回答

0

试试这个亲爱

代码

一组一个或多个完整的数据库

<?php 
    shell_exec('mysqldump -u root -h localhost --database db_school > backup-file.sql'); 
?> 
+0

谢谢你的答案,但是,再次相同...一个空文件... 可能有问题,我的系统或xampp? – Adwait

1

的制造具有完全权限(777读/写)确保文件夹。

因为此代码创建新文件名“backup-file.sql”,所以文件夹有权创建新文件。

请给这个php文件执行的文件夹的权限。

+0

感谢vishal,我认为你的答案会使它,但我不知道如何给本地机器上的权限 – Adwait

+0

你有哪个操作系统 –