window xp php exec mysqldump备份

感谢:转http://www.cnfos.com/?p=543 

发表于   马煜 原文附后面:

验证了一下!

<?
$dbhost = "localhost"; //数据库主机名 
$dbuser = "root"; //数据库用户名 
$dbpass = "123456"; //数据库密码 
$dbname = "test"; //数据库名 


/*****************************************
*
*可获得数据库的结构、数据、视图、触发器、存储过程
*
******************************************/
$comm_dir = "d:/APMServ5.2.6/MySQL5.1/bin/";//mysqldump所在路径:mysql/bin
$command=  "mysqldump -u$dbuser -p$dbpass --default-character-set=utf8 --opt --triggers -R -x $dbname";//备份命令,这个应该更不错。。。为什么没有变绿色
//"mysqldump --add-drop-table -u$dbuser -p$dbpass db5>1.sql";//备份命令

$file_dir = "D:/APMServ5.2.6/www/htdocs/backupfile/";//备份文件路径 $file_name = date("Yms-His").".sql";//备份文件名 $link = @mysql_connect($dbhost,$dbuser,$dbpass) or die ('Could not connect to server.');//连接数据库 mysql_query("use uco",$link); mysql_query("set names utf8",$link); exec($comm_dir.$command.'>'.$file_dir.$file_name,$arr,$i);//执行备份命令 ?>

 

原文:

用php写一个数据备份的功能。他的做法是使用php的exec函数执行mysqldump命令,进行备份。代码:

<?php
exec( ‘mysqldump -uroot -p123456 mysqldb>d:/bak/1.sql’, $arr, $i );
echo $i;
?>

如果成功页面应该输出0的,可是一直输出1,目录下也生成文件1.sql了,但是0字节,空的。

我在自己电脑上执行,没有问题,可是我的是linux系统。和系统有关系?
重启电脑切换到win下,遇到的情况和同事一样,正在思索,想到了会不会是路径的问题,改写命令如下:

<?php
exec(‘d:/mysql5/bin/mysqldump mysqldb>d:/bak/1.sql’,$arr,$i);
echo $i
?>

果然,输出0,而且d:/bak目录下生成的1.sql文件也有内容了。

转载于:https://www.cnblogs.com/la-isla-bonita/archive/2012/06/04/2534519.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值