如何利用mysqldump备份MySQL数据库

如何利用mysqldump备份MySQL数据库,第1张

一、数据备份的重要性

工作中,如果意外删除了重要的文件或者目录的话,那结果可就惨了。尤其是当误删除的数据涉及重要的客户或者关键项目,并且这些数据无法轻易重新创建的时候,那滋味,不用我说你也能想象得到。不巧的是,像这样的数据在公司环境中随处可见,例如销售记录、客户****,等等。

二、关于mysqldump

MySQL自身提供了许多命令行工具,例如mysql工具可以用来与MySQL的数据库模式、数据、用户和配置变量进行交互,而mysqladmin工具则可以进行各种管理任务,还有就是下面将要介绍的mysqldump。此外还有很多,不过那超出了本文的讨论范围。工具mysqldump既可以用来备份数据库模式,还可以用来备份数据;利用它,我们不仅可以对一个服务器上的所有数据库进行地毯式的备份,同时我们还可以选择性地备份某个数据库,甚至数据库中指定的某些表。

当在服务器上安装MySQL的时候,应修改系统路径以便使全局命令行可以访问各个客户程序。打开终端窗口,并执行下列命令:%>mysqldump Usage: mysqldump [OPTIONS] database [tables] OR mysqldump [OPTIONS]

databases [OPTIONS] DB1 [DB2 DB3] OR mysqldump [OPTIONS] all-databases [OPTIONS]

For more options, use mysqldump help

这里给出了使用mysqldump程序的方法。举例来说,若要备份所有数据库模式和数据至文件backup092210sql的话,可以执行如下所示的命令:%>mysqldump -u root -p all-databases > backup092210sql Enter password:

这里,为了能够访问所有数据库,我们需要一个root权限,所以这里需要在提示符后面输入相应口令。此外,如果你是在开发用的服务器上练习这些命令的话,不妨花一些时间看看备份文件的内容。这时您会看到一系列的SQL语句,先是删除各个表后重新创建的语句,然后是重新创建相关数据的语句。另外,由于上面的例子中我们对所有数据库进行备份,所以您还会发现,备份文件将创建每个数据库(如果它还没有存在的话),然后通过USE命令切换到该数据库,进而创建与该数据库相关的表跟数据。

若要备份单个数据库,例如要备份名为wiki的数据库到一个名为wiki-backup092210sql的文件中,我们可以使用如下所示的命令:%>mysqldump -u root -p wiki > wiki-backup092210sql Enter password:

最后,若要备份数据库中名为users的表的话,例如要把它备份到名为wikiusers-backup092210sql的文件中,我们可以使用如下所示的命令:%>mysqldump -u root -p wiki users > wikiusers-backup092210sql Enter password:

三、调整备份内容

有时候,我们可能只想备份数据库的模式,或者只想备份数据库的数据。为了备份数据库模式,可以向mysqldump传递参数no-data,如下所示:%>mysqldump -u root -p no-data wiki > wiki-backup092210sql

为了只备份数据库的数据,可以向mysqldump使用参数no-create-info,如下所示:%>mysqldump -u root -p no-create-info wiki > wiki-backup092210sql

对于前面所举的例子,仅需要少量的击键次数就能执行mysqldump命令。然而,工作中要干的活还有很多,并且如果老是执行这些命令的话,那么生活就会变得太单调了。因此,我们可以设法使这些过程自动化,这时我们可以借助cron工具来达成我们的目标,这个工具在所有类UNIX *** 作系统上都能找到。为了自动执行备份任务,我们需要新建一个正确命名的文件。例如nightly-backupsh,具体命令如下所示:#!/bin/sh mysqldump -uroot -psecret wiki > /home/backup/sql/wiki-backup-`date +%m%d%Y`sql

接下来,我们将这个脚本提供交给cron,方法是使用crontab。为此,我们可以执行如下所示的命令:%>crontab -e

这将打开当前登录用户的crontab文件,如果该文件不存在的话就会自动新建一个。在这个文件中,我们可以添加如下内容,来确保每天上午3时运行该备份脚本:0 3 /home/backup/scripts/nightly-backupsh

如果您对crontab的语法很陌生的话,这里的参数可能让您摸不着头脑。这里前五个参数分别对应于执行脚本的时间,依次为分、时、日、月和星期几。因此,要想在每星期二的4:45am执行脚本的话,可以使用参数45 4 3。

插入上面所示的一行内容后,保存文件,那么我们的任务就会开始按照给定时间调度执行。 需要注意的是,第二天早上一定要查看相应的目录,看看事情是否一切正常。

五、其它备份方案

就像本文前面所说的那样,mysqldump只是MySQL众多备份方案中的一个。此外,您还可以使用MySQL的二进制日志文件进行增量备份,或者使用从MySQL主服务器中将数据复制到从服务器中。

六、小结本文中,我们与读者一道建立了一个简单的MySQL备份解决方案。如果您之前还未实施任何解决方案的话,不妨立即动手试一下。重要的是,这只需要花费您几分钟的时间,我想这是很划得来的。

jQueryfnaddOption = function(text,value)

{

jQuery(this)get(0)optionsadd(new Option(text,value));

}

这是个脚本,为指定select追加option

function openendtime(){

//var beginvalue= $(timeBegin)val();

$(timeEnd)empty();//添加前清空select选项

//alert(beginvalue);

for(i=0;i<这里是mysql返回的数据集长度;i++){

$(timeEnd)addOption(显示值,option的value值);//调用

}

}

修改下你应该就可以用!!!

有多种方法啊。介绍其中一种,使用mysql数据库的odbc驱动。

步骤:

1安装mysql数据库的odbc驱动,mysql-connector-odbc-35123-win32msi(其中是版本号),下载并安装。

2在mysql中创建数据库实例。

3打开控制面板

--

管理工具

--

数据源odbc,在用户dsn中添加一个mysql

odbc

351数据源。

4在登录login选项卡中输入数据源名称data

source

name,此处输入mysqldns(也可以自己随便命名,只要在后面导入数据的时候选择正确的数据源名字就行);然后输入服务器server,用户user,密码password,输入正确后选择要导入的数据库,database选择你需要导入的数据库。在连接选项connect

options中根据需要设置mysql使用的端口port和字符集character

set。

注:字符集一定要和mysql服务器相对应,如果mysql使用了gbk字符集,则一定要设置字符集为gbk,否则导入到sql

server可能会出现问号乱码。

5打开sql

server企业管理器,选择该数据库,单击右键选择所有任务

--

导出数据。

6‘选择数据源’为默认,‘选择目的’为刚刚安装的mysql数据源,用户/系统dsn为mysqldns。

方法2:

有多种方法啊。介绍其中一种,使用mysql数据库的odbc驱动。步骤:

1安装mysql数据库的odbc驱动,mysql-connector-odbc-35123-win32msi(其中是版本号),下载并安装。

2在mysql中创建数据库实例。

3打开控制面板

--

管理工具

--

数据源odbc,在用户dsn中添加一个mysql

odbc

351数据源。

4在登录login选项卡中输入数据源名称data

source

name,此处输入mysqldns(也可以自己随便命名,只要在后面导入数据的时候选择正确的数据源名字就行);然后输入服务器server,用户user,密码password,输入正确后选择要导入的数据库,database选择你需要导入的数据库。在连接选项connect

options中根据需要设置mysql使用的端口port和字符集character

set。

注:字符集一定要和mysql服务器相对应,如果mysql使用了gbk字符集,则一定要设置字符集为gbk,否则导入到sql

server可能会出现问号乱码。

5打开sql

server企业管理器,选择该数据库,单击右键选择所有任务

--

导出数据。

6‘选择数据源’为默认,‘选择目的’为刚刚安装的mysql数据源,用户/系统dsn为mysqldns。

以上就是关于如何利用mysqldump备份MySQL数据库全部的内容,包括:如何利用mysqldump备份MySQL数据库、js 用createElement新建了一个select元素,然后向select的option中添加数据库中数据,如何 *** 作急!!!!、怎么链接一个服务器上的mysql数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9489656.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存