【Mysql】php执行脚本进行mysql数据库 备份和还原
一、mysql备份
1、这里使用 php脚本的形式进行mysql 数据库的备份和还原,想看linux的sh版本的,有时间再贴。
2、找到 mysql的【mysqldump】 执行程序,建议phpinfo
3、使用 linux的定时任务助手 crontab,写入里面,采用curl 定时访问php脚本文件
4、php脚本文件参考:采用TP3.2示例
/**
* 数据库备份代码
* @param 每月一次
* @return
* @author xzz 2018年7月27日下午2:40:41
*/
public function aotu_save_mysql_month(){
//exec("/***/mysql-5.5/bin/mysqldump -u*** -p****** db_name > /www/***/111.sql");
$filename = '/***/save_mysql_'.date('Y-m').'.sql.gz';//保存文件.sql
$db_user = 'root';
$db_pwd = '*****';
$db_name = '***';
$host = 'localhost';
$port = '33306';//与端口无关
$exec = "/***/mysql-5.5/bin/mysqldump -u$db_user -p$db_pwd $db_name > $filename";
exec($exec);
}
5、测试:直接在浏览器输入:www.xxx.com/index.php/Module_name/Controller_name/aotu_save_mysql_month
去目标目录,查看.sql文件是否生成。
6、ps: 数据库密码不要过于奇葩,【很多的特殊字符,和会mysqldump 命令参数冲突】,建议常用字符或者 重新创建一个mysql账号。
二、mysql还原
/***/mysql/bin/mysql -uroot -ppassword db_name < /***/yourbackup.sql //参数跟备份时一样,backup.sql是需要还原的数据库文件,文件路径为绝对路径。