文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

如何使用mysqldump对mysql进行备份和恢复

2024-04-02 19:55

关注

这篇文章给大家分享的是有关如何使用mysqldump对mysql进行备份和恢复的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

mysqldump是mysql的逻辑备份恢复工具,可以只备份某个表,某个库或者整个数据库。为了保证数据的一致性,备份的时候会加写锁,所以一定要在系统闲的时候用。
语法:
[root@D2-LZY245 ~]# 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

备份test1库:
[root@D2-LZY245 ~]# mysqldump -uroot -p123456 test1 > test1_bk.sql

查看生成的备份文件:
[root@D2-LZY245 ~]# mysqldump -uroot -p123456 test1 > test1_bk.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
[root@D2-LZY245 ~]# cat test1_bk.sql
-- MySQL dump 10.13  Distrib 5.7.15, for linux-glibc2.5 (x86_64)
--
-- Host: localhost    Database: test1
-- ------------------------------------------------------
-- Server version       5.7.15

;
;
;
;
;
;
;
;
;
;

--
-- Table structure for table `emp`
--

DROP TABLE IF EXISTS `emp`;
;
;
CREATE TABLE `emp` (
  `employee_id` int(10) DEFAULT NULL,
  `first_name` varchar(50) DEFAULT NULL,
  `last_name` varchar(50) DEFAULT NULL,
  `salary` decimal(10,2) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
;

--
-- Dumping data for table `emp`
--

LOCK TABLES `emp` WRITE;
;
INSERT INTO `emp` VALUES (100,'Steven','King',24000.00),(101,'Neena','Kochhar',17000.00),(102,'Lex','De Haan',17000.00),(103,'Alexander','Hunold',9000.00),(104,'Bruce','Ernst',6000.00),(105,'David','Austin',4800.00),(106,'Valli','Pataballa',4800.00),(107,'Diana','Lorentz',4200.00),(108,'Nancy','Greenberg',12008.00),(109,'Daniel','Faviet',9000.00),(110,'John','Chen',8200.00);
;
UNLOCK TABLES;

--
-- Table structure for table `emp1`
--

DROP TABLE IF EXISTS `emp1`;
;
;
CREATE TABLE `emp1` (
  `employee_id` int(10) DEFAULT NULL,
  `first_name` varchar(50) DEFAULT NULL,
  `last_name` varchar(50) DEFAULT NULL,
  `salary` decimal(10,2) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
;

--
-- Dumping data for table `emp1`
--

LOCK TABLES `emp1` WRITE;
;
INSERT INTO `emp1` VALUES (100,'Steven','King',24000.00),(101,'Neena','Kochhar',17000.00),(102,'Lex','De Haan',17000.00),(103,'Alexander','Hunold',9000.00),(104,'Bruce','Ernst',6000.00),(105,'David','Austin',4800.00),(106,'Valli','Pataballa',4800.00),(107,'Diana','Lorentz',4200.00),(108,'Nancy','Greenberg',12008.00),(109,'Daniel','Faviet',9000.00),(110,'John','Chen',8200.00);
;
UNLOCK TABLES;
;

;
;
;
;
;
;
;

-- Dump completed on 2017-05-26 18:32:51

备份文件实际上就是SQL脚本,先是设置参数,如果表存在则删除表,然后创建表,锁表,执行插入语句,解锁。恢复的时候执行这个SQL脚本就好了。执行脚本有2种方式,一种是重定向,一种是使用source。

重定向方式:
mysql> create database test2;
Query OK, 1 row affected (0.00 sec)
#创建一个数据库test2,恢复到test2。

[root@D2-LZY245 ~]# mysql -uroot -p123456 test2 < test1_bk.sql

查看确认:
mysql> use test2
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+-----------------+
| Tables_in_test2 |
+-----------------+
| emp             |
| emp1            |
+-----------------+
2 rows in set (0.00 sec)


source方式:
mysql> create database test3;
Query OK, 1 row affected (0.00 sec)

mysql> use test3;
Database changed

mysql> source /root/test1_bk.sql

mysql> show tables;
+-----------------+
| Tables_in_test3 |
+-----------------+
| emp             |
| emp1            |
+-----------------+
2 rows in set (0.00 sec)

这两种方式是有区别的,使用重定向方式,如果有错误会直接退出,不会执行后续的语句,而使用source方式则会跳过错误的地方,继续执行后续的语句。

感谢各位的阅读!关于“如何使用mysqldump对mysql进行备份和恢复”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯