PHP定时完成数据库的备份

1.手动备份数据库(表的)方法
cmd控制台(windows指令):
mysqldump –u root –proot 数据库 [表名1 表名2..] > 文件路径
比如: 把temp数据库备份到 d:\temp.bak
mysqldump –u root –proot test2 > C:\Users\Administrator\Desktop\MongoDB\backup\temp.bak(不要分号和用户名密码)
如果你希望备份是,数据库的某几张表( d:\temp.dept.bak名字和后缀任意 )
mysqldump –u root –prot temp dept > d:\temp.dept.bak 如何使用备份文件恢复我们的数据.
mysql控制台(进到mysql里面去)
source d:\temp.dept.bak
cmd控制台(windows指令):
mysql backup1 < C:\Users\Administrator\Desktop\MongoDB\backup\ku_test2.bak(不报错就是执行了)
2.使用定时器来自定完成
把备份数据库的指令,写入到 bat文件, 然后通过任务管理器去定时调用 bat文件.
mytask.bat 内容是:
D:\MYSQL\mysql-5.7.20-winx64\mysql-5.7.20-winx64\bin\mysqldump backup1 > C:\Users\Administrator\Desktop\MongoDB\backup\backup1.sql
如果你的mysqldump.exe文件路径有空格,则一定要使用 “” 包括.
“D:\MYSQL\mysql winx64\mysql winx64\bin\mysqldump” backup1 > C:\Users\Administrator\Desktop\MongoDB\backup\backup1.sql
手动双击看能不能运行bat文件,可以看这个文件有没有问题。
把mytask.bat 做成一个任务,并定时调用在 2:00 调用一次。
步骤 开始搜索:任务计划->创建基本任务,选中你的mytask.bat文件 ,最后配置:
现在问题是,每次都是覆盖原来的备份文件,不利用我们分时间段进行备份, 我们可以这样处理; 示意图:
3.使用PHP完成定时发送邮件的功能。
可以自己搭建邮件服务器,也可以通过账号密码让搜狐转发。 1.上面的代码是模拟发送邮件,看看如何真正发送邮件.
在PHP中,有一个函数 mail , 是用于发送邮件,我们实际上可以使用 PHPMailer 类,我们使用他完成. 要正确的使用PHPMailer 发送邮件,需要满足如下条件
1.本身机器是可以联网的
2.需要搭建自己的smtp邮件服务器->示意图

mysql14---手动备份-LMLPHP

1.搭建自己的邮件服务器.(自己搭建的邮件服务器,首先写的代码把邮件发送给了自己搭建的服务器,)
卸载.
安装时傻瓜式的,一步一步的走ok
配置 :
3.1选择access数据库(邮件要存起来,access是小型数据库,office自带的)
3.2,SMTP是发送协议25端口,POP3是接收协议110端口。

mysql14---手动备份-LMLPHP

3.3配置邮件服务器
点击设置->邮箱域名设置
点击设置->服务器设置
设置一个账号(试用版本只能设置5个账号) 如何在linux下完成定时任务:
linux如何备份.
1. 直接执行PHP脚本, 需要在同一个服务器上执行.linux上不是像windows用任务计划,而是用crontab 搞的。
# crontab -e
00 * * * * /usr/local/bin/php /home/htdocs/phptimer.php
2.通过HTTP请求来触发脚本, PHP文件允许不在同一服务器上
# crontab -e
00 * * * * /usr/bin/wget -q -O temp.txt http://www.phptimer.com/phptimer.php
上面是通过wget来请求PHP文件, PHP输出会保存在临时文件temp.txt中
# crontab -e
00 * * * * /usr/bin/curl -o temp.txt http://www.phptimer.com/phptimer.php
上面是通过curl -o来请求PHP文件, PHP输出会保存在临时文件temp.txt中
# crontab -e
00 * * * * lynx -dump http://www.phptimer.com/phptimer.php
上面是通过Lynx文本浏览器来请求PHP文件

  

05-11 21:54