mysql日志备份命令是什么_mysql的常用命令以及备份和恢复

zz/2024/7/13 11:17:41

首先建立一个计划并严格遵守,定期实施备份。

让服务器执行更新日志。当你在崩溃后需要恢复数据时,更新日志将帮助你。在你用备份文件恢复数据到备份时的状态后,你可以通过运行更新日志中的查询再次运用备份后面的修改,这将数据库中的表恢复到崩溃发生时的状态。

以文件系统备份的术语讲,数据库备份文件代表完全倾倒(full dump),而更新日志代表渐进倾倒(incremental dump)。

使用一种统一的和易理解的备份文件命名机制。象backup1、buckup2等不是特别有意义。当实施你的恢复时,你将浪费时间找出文件里是什么东西。你可能发觉用数据库名和日期构成备份文件名会很有用。

你可能想在生成备份后压缩它们。备份一般都很大!你也需要让你的备份文件有过期期限以避免它们填满你的磁盘,就象你让你的日志文件过期那样。

用文件系统备份你的备份文件。如果遇上了一个彻底崩溃,不仅清除了你的数据目录,也清除了包含你的数据库备份的磁盘驱动器,你将真正遇上了麻烦。也要备份你的更新日志。

将你的备份文件放在不同于用于你的数据库的文件系统上。这将降低由于生成备份而填满包含数据目录的文件系统的可能性。

用于创建备份的技术同样对拷贝数据库到另一台机器有用。最常见地,一个数据库被转移到了运行在另一台主机上的服务器,但是你也可以将数据转移到同一台主机上的另一个服务器。下面以数据库dzzw作为讲解备份恢复的实例:

一、.数据恢复

1.使用mysqldump备份数据库

当你使用mysqldump程序产生数据库备份文件时,缺省地,文件内容包含创建正在倾倒的表的CREATE语句和包含表中行数据的INSERT语句。换句话说,mysqldump产生的输出可在以后用作mysql的输入来重建数据库。

Mysqldump参数如下:

#mysqldump数据库名 [表名] -u 用户名-p '密码' > 操作系统下文件名

举例:

C:\>mysqldump dzzw -u root -p > d:\buckupdb\dzzw\dzzw2040728.sql

Enter password: ******

C;\>

这说明备份成功。

输出文件的开头看起来象这样:

-- MySQL dump 9.10

--

-- Host: localhost   Database: dzzw

-- ------------------------------------------------------

-- Server version      4.0.18-nt

--

-- Table structure for table `a_catalog`

--

CREATE TABLE a_catalog (

catalog_id varchar(50) NOT NULL default '',

dossier_id varchar(50) NOT NULL default '',

parent_id varchar(50) default NULL,

name text NOT NULL,

brief text,

creater_id varchar(50) NOT NULL default '',

active char(1) NOT NULL default 'Y',

ts datetime NOT NULL default '0000-00-00 00:00:00',

PRIMARY KEY (catalog_id,dossier_id)

) TYPE=MyISAM;

--

-- Dumping data for table `a_catalog`

--

INSERT INTO a_catalog VALUES ('sdaf','sadf','sadf','asdf','asdf','000','Y','2004-05-25 09:02:34');

INSERT INTO a_catalog VALUES ('sdf','sadf','sadf','sdaf','asdf','000','Y','2004-05-25 09:11:40');

INSERT INTO a_catalog VALUES ('DQGXL001','xhq001','xhq001','党群关系类','好好好好!','001','Y','2004-07-15 13:59:02');

INSERT INTO a_catalog VALUES ('阿萨达萨','xhq001','xhq001','阿萨','阿阿萨阿萨达萨巴','001','N','2004-07-15 14:03:03');

INSERT INTO a_catalog VALUES ('阿洒洒洒','xhq001','DQGXL001','阿达','阿达阿萨','001','Y','2004-07-15 14:03:40');

……

......

文件剩下的部分有更多的INSERT和CREATE TABLE语句组成。

输出单个的表:

C:\>mysqldump dzzw a_catalog -u root -p > d:\buckupdb\dzzw\a_catalog2040728.sql

Enter password: ******

C;\>

这说明备份成功。

输出文件的开头看起来象这样:

-- MySQL dump 9.10

--

-- Host: localhost   Database: dzzw

-- ------------------------------------------------------

-- Server version      4.0.18-nt

--

-- Table structure for table `a_catalog`

--

CREATE TABLE a_catalog (

catalog_id varchar(50) NOT NULL default '',

dossier_id varchar(50) NOT NULL default '',

parent_id varchar(50) default NULL,

name text NOT NULL,

brief text,

creater_id varchar(50) NOT NULL default '',

active char(1) NOT NULL default 'Y',

ts datetime NOT NULL default '0000-00-00 00:00:00',

PRIMARY KEY (catalog_id,dossier_id)

) TYPE=MyISAM;

--

-- Dumping data for table `a_catalog`

--

INSERT INTO a_catalog VALUES ('sdaf','sadf','sadf','asdf','asdf','000','Y','2004-05-25 09:02:34');

INSERT INTO a_catalog VALUES ('sdf','sadf','sadf','sdaf','asdf','000','Y','2004-05-25 09:11:40');

INSERT INTO a_catalog VALUES ('DQGXL001','xhq001','xhq001','党群关系类','好好好好!','001','Y','2004-07-15 13:59:02');

INSERT INTO a_catalog VALUES ('阿萨达萨','xhq001','xhq001','阿萨','阿阿萨阿萨达萨巴','001','N','2004-07-15 14:03:03');

INSERT INTO a_catalog VALUES ('阿洒洒洒','xhq001','DQGXL001','阿达','阿达阿萨','001','Y','2004-07-15 14:03:40');

缺省地,mysqldump在写入前将一个表的整个内容读进内存。这通常确实不必要,并且实际上如果你有一个大表,几乎是失败的。你可用--quick选项告诉mysqldump只要它检索出一行就写出每一行。为了进一步优化倾倒过程,使用--opt而不是--quick。--opt选项打开其它选项,加速数据的倾倒和把它们读回。

C:\>mysqldump dzzw a_catalog --opt -u root -p > d:\buckupdb\dzzw\a_catalog204072

8.sql

Enter password: ******

C:\>

这说明备份成功。

输出文件的开头看起来象这样:

DROP TABLE IF EXISTS a_catalog;

CREATE TABLE a_catalog (

catalog_id varchar(50) NOT NULL default '',

dossier_id varchar(50) NOT NULL default '',

parent_id varchar(50) default NULL,

name text NOT NULL,

brief text,

creater_id varchar(50) NOT NULL default '',

active char(1) NOT NULL default 'Y',

ts datetime NOT NULL default '0000-00-00 00:00:00',

PRIMARY KEY (catalog_id,dossier_id)

) TYPE=MyISAM;

--

-- Dumping data for table `a_catalog`

--

/*!40000 ALTER TABLE a_catalog DISABLE KEYS */;

LOCK TABLES a_catalog WRITE;

INSERT INTO a_catalog VALUES ('sdaf','sadf','sadf','asdf','asdf','000','Y','2004-05-25 09:02:34'),('sdf','sadf','sadf','sdaf','asdf','000','Y','2004-05-25 09:11:40'),('DQGXL001','xhq001','xhq001','党群关系类','好好好好!','001','Y','2004-07-15 13:59:02'),('阿萨达萨','xhq001','xhq001','阿萨','阿阿萨阿萨达萨巴','001','N','2004-07-15 14:03:03'),('阿洒洒洒','xhq001','DQGXL001','阿达','阿达阿萨','001','Y','2004-07-15 14:03:40');

UNLOCK TABLES;

/*!40000 ALTER TABLE a_catalog ENABLE KEYS */;

2.使用直接拷贝数据库的备份方法

另一种不涉及mysqldump备份数据库和表的方式是直接拷贝数据库表文件。

关闭数据库,拷贝D:\mysql\data\dzzw 所有文件。当你完成了备份时,你可以重启服务器(如果关闭了它)或释放加在表上的锁定(如果你让服务器运行)。要用直接拷贝文件把一个数据库从一台机器拷贝到另一台机器上,只是将文件拷贝到另一台服务器主机的适当数据目录下即可。要确保文件是MyIASM格式或两台机器有相同的硬件结构,否则你的数据库在另一台主机上有奇怪的内容。你也应该保证在另一台机器上的服务器在你正在安装数据库表时不访问它们。

二、.数据恢复

数据库损坏的发生有很多原因,程度也不同。如果你走运,你可能仅损坏一两个表(如掉电),如果你倒霉,你可能必须替换整个数据目录(如磁盘损坏)。在某些情况下也需要恢复,比如用户错误地删除了数据库或表。

1.用mysqldump恢复整个数据库

Mysqldump参数如下:

#mysqldump -u 用户名-p'密码' 数据库名 < 操作系统下文件名

举例:

先在Mysql里创建数据库

mysql> create database dzzw;

Query OK, 1 row affected (0.05 sec)

然后将备份的数据导入

C:\>mysql -u root -p dzzw < d:\dzzw2040728.sql

Enter password: *****

进入mysql 建立用户hs

C:\>mysql -uroot -p

Enter password: ******

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 10 to server version: 4.0.18-nt

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

mysql> use dzzw;

Database changed

mysql> grant select,insert,update,delete on dzzw.* to hs@localhost identified by

'hsoft';

Query OK, 0 rows affected (0.16 sec)

mysql> grant select,insert,update,delete on dzzw.* to hs identified by 'hsoft';

Query OK, 0 rows affected (0.00 sec)

这样就成功恢复了数据库dzzw;

2. 使用直接拷贝备份的数据库恢复整个数据库

先关闭mysql数据库,把备份的数据库dzzw,放到 d:\mysql\data\下就行,

这样就把数据库dzzw恢复了。然后启动mysql数据库,进入mysql 建立用户hs

C:\>mysql -uroot -p

Enter password: ******

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 10 to server version: 4.0.18-nt

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

mysql> use dzzw;

Database changed

mysql> grant select,insert,update,delete on dzzw.* to hs@localhost identified by

'hsoft';

Query OK, 0 rows affected (0.16 sec)

mysql> grant select,insert,update,delete on dzzw.* to hs identified by 'hsoft';

Query OK, 0 rows affected (0.00 sec)

这样就成功恢复了数据库dzzw;


http://www.ngui.cc/zz/2390154.html

相关文章

数据结构线性表(1)

顺序表C语言代码实现 实验要求&#xff1a;编写一个头文件SqList.h&#xff0c;实现顺序表的各种基本操作&#xff0c;并在此基础上设计一个主程序&#xff08;exp2_1.cpp&#xff09;完成如下功能&#xff1a; &#xff08;1&#xff09; 初始化顺序表L &#xff08;2&#xf…

chromium浏览器开发系列第一篇:如何获取最新chromium源码

背景&#xff1a; 最近摊上一个事儿&#xff0c;领导非要让写一篇技术文章&#xff0c;思来想去&#xff0c;自己接触chrome浏览器时间也不短了&#xff0c;干脆就总结一下吧。于是乎&#xff0c;本文顺理成章。由于有些细节必需描述清楚&#xff0c;所以这次先讲如何拿到…

中文域名,网站,启用,弘勇,xn--2gr99z.xn--fiqs8s,网址,中国,

下面这些网站是中文域名网站&#xff0c;中文域名直达网站&#xff0c;用百度要搜索关键词&#xff0c;步骤比较多&#xff0c;输入网址比较快&#xff0c;直达网站。还有一些中文域名网站&#xff0c;签名&#xff1a;游志勇。 弘勇.中国&#xff0c; xn–2gr99z.xn–fiqs8s …

仿新浪微博2014之登陆界面四(总体功能)

在前面完成了数据库操作、异步图片加载和缓存、新浪微博认证后&#xff0c;就可以进行登录界面的功能开发了&#xff0c;登录界面功能代码如下&#xff1a; package com.xhq.xweibo.ui;import java.util.ArrayList; import java.util.List;import com.sina.weibo.sdk.auth.Oau…

发一个文件读写类

<?php /* * author:xhq * email:xhq6632126.com * QQ:119948717 */ header("Content-type: text/html; charsetutf-8");class filesystem {/*名称&#xff1a;创建文件参数&#xff1a;文件名&#xff0c;写入的数据&#xff0c;模式*/function writefile($file,…

2021北京高考英语口试成绩查询,2021北京高考英语增加口试

依据北京推进高等院校考试招生规章制度综合性改革创新实施意见&#xff0c;从二零二一年起&#xff0c;英文提升口语考试&#xff0c;英语口语加听力考试总共50分&#xff0c;听闻无纸化考试2020年将首考。高考英语提升口语这针对关心今年高考的父母而言&#xff0c;很有可能并…

Java程序员面试必备的20道数据库面试解析

进了互联网公司&#xff0c;整天也就是搬砖&#xff0c;等到了面试的时候&#xff0c;发现数据库方面&#xff0c;忘得一塌糊涂&#xff0c;抽时间整理了一些数据库方面的题。进了互联网公司&#xff0c;整天也就是搬砖&#xff0c;等到了面试的时候&#xff0c;发现数据库方面…

2022最新数据库面试题大全

一、基本概念 1.主键、外键、超键、候选键 超键&#xff1a;在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键&#xff0c;多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。 候选键&#xff1a;是最小超键&#xff0c;即没有冗余…

python发音机器人_Python3从零开始搭建一个语音对话机器人

目录 01-初心缘由 最近在研究语音识别方向&#xff0c;看了很多的语音识别的资料和文章&#xff0c;了解了一下语音识别的前世今生&#xff0c;其中包含了很多算法的演变&#xff0c;目前来说最流行的语音识别算法主要是依赖于深度学习的神经网络算法&#xff0c;其中RNN扮演了…

赞一下老北京人的指路精准度

昨晚下班没事&#xff0c;网上查好公交往返路线&#xff0c;就坐公交去了趟前门大栅栏逛了逛。无意间感受到了老北京人的热情及指路的精准度。 虽在北京这么多年&#xff0c;但这个大栅栏还真没去过。特11到大栅栏&#xff0c;听公交报站&#xff0c;才知道这发音叫大栅…