iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >数据库中有哪两种数据库备份
  • 289
分享到

数据库中有哪两种数据库备份

2024-04-02 19:04:59 289人浏览 安东尼
摘要

小编给大家分享一下数据库中有哪两种数据库备份,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!数据库备份的两种方法是:1、使用Mys

小编给大家分享一下数据库中有哪两种数据库备份,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

数据库备份的两种方法是:1、使用Mysqldump结合exec函数进行数据库备份;2、使用【PHP+mysql+header】函数进行数据库备份。

数据库备份是必要的一般都是使用mysqldump进行备份,我这边写了两种备份方法可以参考一下。

第一种:使用mysqldump结合exec函数进行数据库备份操作。

代码如下



header('Content-Type:text/html;charset=utf8');
ini_set("max_execution_time", "0");//代码运行时间不限制  防止备份失败
ini_set('memory_limit', '128M');//设置内存 根据需求可以修改
date_default_timezone_set("PRC");
//创建需要保存sql文件的文件夹
$path = 'D:\SQL\databse_backup';
//定义数据库配置
$user = ''; //数据库账户
$pwd  = ''; //数据库密码
$dbname = ''; //数据库名称

//备份数据库命令地址文件
$sqladdress = 'D:\phpStudy\MySQL\bin\mysqldump.exe';

//备份指定地址
$time = time();
$path = 'D:\SQL\databse_backup'.'\\'.date("Ymd",$time);
if(!file_exists($path))
{
    mkdir($path,0777,true);
}

//备份的数据库文件名
$sqlFile = $dbname."_%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%.sql";
//判断是否存在密码
$passWord = $pwd== ''?'':'  -p'.$pwd;
//拼接备份命令
$order =  $sqladdress.' --opt  -u'.$user.$password.' '.$dbname.' >'.$path.'\\'.$sqlFile;
//执行命令
exec($order);

我使用的是集成的phpstudy里面的mysql下面的mysqldump.exe来备份,备份的数据库名字写法是 数据库名字+年月日时.  上面代码中我对数据库密码进行了判断,我这边有些数据库是不需要密码的。最后使用exec执行命令。

第二种:使用php+mysql+header函数进行数据库备份和下载操作。

代码如下:

header('Content-Type:text/html;charset=utf8');
ini_set("max_execution_time", "0");//代码运行时间不限制  防止备份失败
ini_set('memory_limit', '1024M');//设置内存 根据需求可以修改
date_default_timezone_set("PRC");
header("Content-Type:text/html;charset=utf-8");
$host="";
$user="";//账户
$password="";//密码
$dbname="";//数据库名称
$con =  mysqli_connect("$host","$user","$password","$dbname");
mysqli_select_db($con,$dbname);
$mysql= "set charset utf8;\r\n";#for mysql>=5.0
mysqli_query($con,"SET NAMES 'UTF8'");
$q1=mysqli_query($con,"show tables");
while($t=mysqli_fetch_array($q1)){
    $table=$t[0];
    $q2=mysqli_query($con,"show create table `$table`");
    $sql=mysqli_fetch_array($q2);
    $mysql.=$sql['Create Table'].";\r\n\r\n";#DDL
    $q3=mysqli_query($con,"select * from `$table`");
    while($data=mysqli_fetch_assoc($q3))
    {
        $keys=array_keys($data);
        $keys=array_map('addslashes',$keys);
        $keys=join('`,`',$keys);
        $keys="`".$keys."`";
        $vals=array_values($data);
        $vals=array_map('addslashes',$vals);
        $vals=join("','",$vals);
        $vals="'".$vals."'";
        $mysql.="insert into `$table`($keys) values($vals);\r\n";
        unset($data);
    }
    $mysql.="\r\n";
    unset($t);
}
mysqli_close($con);
$filename=date('Ymj').".sql"; //文件名为当天的日期
$time = time();
$path = 'D:\SQL\databse_backup'.'\\'.date("Ymd",$time).'\\';
// 检查目录是否存在
if(!is_dir($path)){
    // 新建目录
    mkdir($path, 0777, true);
}
$file_name = $path.$filename;
$fp = fopen($file_name,'w');
fputs($fp,$mysql);
fclose($fp);
$fp=fopen($file_name,"r");
$file_size=filesize($file_name);
header("Content-type: application/octet-stream");
header("Accept-Ranges: bytes");
header("Accept-Length: ".$file_size);
header("Content-Disposition: attachment; filename=".$filename);
//这里一定要使用echo 进行输出,否则下载的文家是空白的
echo fread($fp,$file_size);
fclose($fp);
exit;

个人建议用第一种,第二种太消耗内存了。

第一种可以做成定时备份,windows下可以用定时任务。

以上是“数据库中有哪两种数据库备份”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网数据库频道!

您可能感兴趣的文档:

--结束END--

本文标题: 数据库中有哪两种数据库备份

本文链接: https://www.lsjlt.com/news/54618.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 数据库中有哪两种数据库备份
    小编给大家分享一下数据库中有哪两种数据库备份,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!数据库备份的两种方法是:1、使用mys...
    99+
    2024-04-02
  • oracle数据库备份方式有哪几种
    数据库级备份:完整备份整个数据库,包括数据文件、控制文件、归档日志等。 表级备份:备份指定的表或表空间,可以选择性备份数据库中的部...
    99+
    2024-04-09
    oracle
  • 数据库中数据备份有哪些类型
    这篇文章主要介绍了数据库中数据备份有哪些类型,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。数据备份可分为:热备份、冷备份和温备份。热备份可以...
    99+
    2024-04-02
  • oracle数据库备份方法主要有哪几种
    oracle 数据库提供五种备份方法:完全备份、增量备份、归档日志备份、闪回备份和云备份。选择最佳方法取决于数据恢复目标时间、数据量、存储空间、安全和合规性要求。 Oracle 数据库...
    99+
    2024-04-08
    oracle
  • mysql——数据库备份——使用mysqldump命令备份所有数据库
    mysqldump命令备份所有数据库; 语法格式:mysqldump -u username -ppassword --all-databases  > backupname.sql --all-databases:这个选项表示后面跟一...
    99+
    2023-10-09
    数据库 mysql java sql mybatis
  • MySQL数据库中有哪些备份方案
    MySQL数据库中有哪些备份方案,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1、冷备份:一般主要用于非核心业务,这类业务一般都是允许业务中断...
    99+
    2024-04-02
  • oracle数据库如何备份数据库
    oracle 提供多种备份方法来保护数据库完整性,包括全备份、增量备份、差异备份和归档日志备份。最佳备份类型取决于数据库大小、恢复目标和可用资源。rman(恢复管理器)是 oracle ...
    99+
    2024-04-19
    oracle 数据丢失
  • 数据库备份服务 数据库备份操作指导
    数据库备份是一项非常重要的任务,可以保证数据的安全性和可靠性。以下是数据库备份操作的指导:1. 确定备份策略:根据业务需求和数据变更...
    99+
    2023-09-21
    数据库
  • MySQL数据库备份种类以及常用备份工具有哪些
    小编给大家分享一下MySQL数据库备份种类以及常用备份工具有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 1、数据库备份种类MySQL按照数据库大小备份,...
    99+
    2024-04-02
  • ORACLE数据库备份
    ORACLE数据库备份 三种模式:表备份,用户备份,完全备份。 两种方式: DOS命令执行: 表备份: 导出:exp scott/tiger@orcle tables=emp,dep...
    99+
    2024-04-02
  • 数据库备份的方式有哪些
    数据库备份的方式有以下几种:1. 完全备份:将整个数据库的所有数据和对象都备份。2. 增量备份:只备份自上次备份以来发生变化的数据。...
    99+
    2023-08-30
    数据库
  • mysql 数据库备份
    目录 数据库备份的方式 一、备份整个 $datadir  二、用mysqldump备份 备份某个库 只备份某个库下某个表 备份某个库,排除库中一些表以外,备份剩余的表 有很多库时候,一次性备份所有的库 一次指定备份某几个库  只备份表结构,...
    99+
    2023-09-09
    数据库
  • oracle数据库备份方式有哪些
    oracle 数据库备份方式有手动导出备份、自动恢复管理器 (rman) 备份、操作系统备份和物理备份。手动导出备份涉及导出和导入文本文件,而 rman 备份通过自动化备份和恢复过程提供...
    99+
    2024-04-19
    oracle
  • MySQL 数据库备份种类以及常用备份工具都有哪些
    本篇文章给大家分享的是有关MySQL 数据库备份种类以及常用备份工具都有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1 数据库备份种类按...
    99+
    2024-04-02
  • oracle数据库备份方法主要有哪几种类型
    主要备份类型包括:完全备份(创建数据库完整副本)、增量备份(备份自上次备份以来更改的数据)、归档日志备份(备份已应用的更改)、rman备份(提供各种备份选项)、快照备份(创建文件系统快照...
    99+
    2024-04-19
    oracle
  • MySQL数据库中备份数据的方法
    MySQL数据库中备份数据的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!想进行数据库的备份首先要在命令行窗口进入My...
    99+
    2024-04-02
  • MySQL数据库备份的三种方式
    为什么要数据库备份? a 保证重要的数据不丢失 b 数据转移   MYSQL数据库备份的方式1、直接拷贝物理文件(D:\Software\mysql-8.0.28-winx64\data中拷贝)2、在sqlyog这种可视化工具中手动导出(点...
    99+
    2023-09-04
    数据库 mysql
  • oracle如何备份数据库数据
    oracle 数据库提供了三种备份方法:完整的数据库备份:复制整个数据库文件和日志文件。增量备份:仅备份自上次备份后更改的数据块。归档日志备份:记录数据库所有更改,用于恢复。 Orac...
    99+
    2024-04-19
    oracle
  • 备份MySQL数据库的方法有哪些
    这篇文章主要讲解了“备份MySQL数据库的方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“备份MySQL数据库的方法有哪些”吧!  备份MySQL数...
    99+
    2024-04-02
  • python备份mysql数据库
    原本可以用shell完成的功能,现在学习python,就照抄照改。完成数据库备份。 #!/usr/bin/python #-*-coding:utf-8-*- #MYSQL BACK import string,time,os,dateti...
    99+
    2023-01-31
    备份 数据库 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作