范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

MySQL的备份与还原,非常规备份,全量备份,增量备份

  一、测试数据库的创建
  1:官方百万级别的测试数据库:
  官方测试数据库github网址:https://github.com/datacharmer/test_db
  下载到目录,解压即可,运行命令:mysql -u root -p < employees.sql mysql -u root -p < employees_partitioned.sql
  2:自己创建简单测试数据库:
  快速随机生成测试语言的网站:https://generatedata.com/
  选择sql和想生成的字段,点击生成Generate!生成即可。
  在MySQL输入生成的语句即可。#1:创建数据库 create database testDatabase;                                                                                                                          #2:使用数据库 use testDatabase;                                                                                                                                      #3:创建表 CREATE TABLE `myTable` (   `id` mediumint(8) unsigned NOT NULL auto_increment,   `name` varchar(255) default NULL,   `phone` varchar(100) default NULL,   `country` varchar(100) default NULL,   `numberrange` mediumint default NULL,   PRIMARY KEY (`id`) ) AUTO_INCREMENT=1; #3:表种插入数据 INSERT INTO `myTable` (`name`,`phone`,`country`,`numberrange`) VALUES   ("Wade Sykes","1-917-342-3132","Turkey",3),   ("Barrett Boyer","1-264-304-0665","Germany",9),   ("Alana Kaufman","(213) 254-4997","India",0),   ("Emmanuel Lopez","(543) 493-0137","Germany",9),   ("Timon Bauer","1-269-448-2772","Pakistan",6);
  3:测试备份还原时用到的命令
  删库跑路测试(先备份好)drop database testDatabase;
  还原后查询库的表数据是否完整。select * from testDatabase.myTable                                                                                                                     +----+----------------+----------------+----------+-------------+ | id | name           | phone          | country  | numberrange | +----+----------------+----------------+----------+-------------+ | 1  | Wade Sykes     | 1-917-342-3132 | Turkey   | 3           | | 2  | Barrett Boyer  | 1-264-304-0665 | Germany  | 9           | | 3  | Alana Kaufman  | (213) 254-4997 | India    | 0           | | 4  | Emmanuel Lopez | (543) 493-0137 | Germany  | 9           | | 5  | Timon Bauer    | 1-269-448-2772 | Pakistan | 6           | +----+----------------+----------------+----------+-------------+二、非常规备份方式
  采用复制整个数据存放目录
  1:查看数据库数据存放位置
  有两种方法:
  1):在数据库中用命令 show variables like "datadir";   查看mysql > show variables like "datadir";                                                                                                                   +---------------+-----------------+ | Variable_name | Value           | +---------------+-----------------+ | datadir       | /var/lib/mysql/ | +---------------+-----------------+ 1 row in set Time: 0.031s
  2):在配置文件中查看,配置了 datadir  目录的可查看。没有配置的默认为 /var/lib/mysql/  位置
  Linux中查看配置文件#centos cat /etc/my.cnf #ubunut cat /etc/mysql/my.cnf
  2:复制目录或者目录下某个数据库名 cp -fr /var/lib/mysql/ /backup/
  3:还原时直接复制文件夹到数据库目录即可 cp -fr /backup/ /var/lib/mysql/
  三、常规备份方式基本命令mysqldump
  mysqldump又可叫做全量备份。
  参数 --databases 同 -B ,单独一个库,也可省略。
  1、备份命令mysqldump格式
  格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 database 数据库名 > 文件名.sql
  备份testDatabase数据库sudo mysqldump -u root -p --databases testDatabase > testdatabase.bak.sql
  2、备份MySQL数据库为带删除表的格式
  备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。sudo mysqldump --add-drop-table -u root -p --databases testDatabase > testdatabase.sql
  3、直接将MySQL数据库压缩备份
  备份并压缩sudo mysqldump -u root -p --databases testDatabase | gzip > testdatabase.sql.gz
  4、备份MySQL数据库某个(些)表
  备份testDatabase中的myTable表,不需要用参数 --databases 或者 -Bsudo mysqldump -u root -p testDatabase myTable > myTable.sql
  5、同时备份多个MySQL数据库
  同时备份testDatabase和 employees两个库sudo mysqldump -u root --databases testDatabase employees > backup.sql
  6、备份服务器上所有数据库
  参数 --all-databases 同 -Asudo mysqldump --all-databases > allbackupfile.sql
  7、还原MySQL数据库的命令
  1) 不指定数据名还原,默认生成原数据库名称,还原所有数据库。sudo mysql -u root -p < allbackupfile.sql
  2) 指定数据名还原,还原指定单个数据库,需在数据库种预先创建一个testDatabase名称。sudo mysql -u root -p testDatabase < allbackupfile.sql
  3) 还原压缩的MySQL数据库gunzip < testDatabase.sql.gz | mysql -u root -p testDatabase #ubuntu 加sudo sudo gunzip < testDatabase.sql.gz | sudo mysql -u root -p testDatabase
  4) 进入数据库用source导入#进入MySQL后,先创建database: CREATE DATABASE testDatabase; #选择数据库 USE testDatabase; #导入sql文件 SOURCE /home/ubuntu/testDatabase.sql; 四、增量备份mysqladmin,以及还原
  增量备份是针对于数据库的bin-log日志进行备份的,增量备份是在全量的基础上进行操作的。增量备份主要是靠mysql记录的bin-log日志。
  1:查看是否开启bin-log日志
  进入mysql输入命令可查看。show variables like "%log_bin%";
  显示如下为开启状态,日志文件在/var/lib/mysql/以binlog.00001的格式保存。 mysql> show variables like "%log_bin%";                                                                                                                 +---------------------------------+-----------------------------+ | Variable_name                   | Value                       | +---------------------------------+-----------------------------+ | log_bin                         | ON                          | | log_bin_basename                | /var/lib/mysql/binlog       | | log_bin_index                   | /var/lib/mysql/binlog.index | | log_bin_trust_function_creators | OFF                         | | log_bin_use_v1_row_events       | OFF                         | | sql_log_bin                     | ON                          | +---------------------------------+-----------------------------+ 6 rows in set Time: 0.012s mysql root@(none):testDatabase>
  如未开启,需要在配置文件种配置[mysqld] #binlog setting,开启增量备份的关键 log-bin=/var/lib/mysql/binlog
  2:查看目前使用的bin-log日志文件
  进入mysql查看命令。show master status;
  显示如下,目前使用的是binlog.000022文件,所有操作都记录在此文件。mysql> show master status;                                                                                                                                    +---------------+----------+--------------+------------------+-------------------+ | File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +---------------+----------+--------------+------------------+-------------------+ | binlog.000022 | 156      |              |                  |                   | +---------------+----------+--------------+------------------+-------------------+  1 row in set Time: 0.007s
  查看当前testDatabase的表myTable数据如下,mysql > select * from testDatabase.myTable                                                                                                               +----+----------------+----------------+----------+-------------+ | id | name           | phone          | country  | numberrange | +----+----------------+----------------+----------+-------------+ | 1  | Wade Sykes     | 1-917-342-3132 | Turkey   | 3           | | 2  | Barrett Boyer  | 1-264-304-0665 | Germany  | 9           | | 3  | Alana Kaufman  | (213) 254-4997 | India    | 0           | | 4  | Emmanuel Lopez | (543) 493-0137 | Germany  | 9           | | 5  | Timon Bauer    | 1-269-448-2772 | Pakistan | 6           | | 7  | ABC            | 1-917-342-3123 | KHMER    | 6           | +----+----------------+----------------+----------+-------------+ 6 rows in set Time: 0.008s
  3:刷新日志,使用新的日志文件(备份)
  在命令端执行命令mysqladmin -u root -p flush-logs
  日志文件从 binlog.000022 变为 binlog.000023mysql> show master status;                                                                                                                                    +---------------+----------+--------------+------------------+-------------------+ | File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +---------------+----------+--------------+------------------+-------------------+ | binlog.000023 | 841      |              |                  |                   | +---------------+----------+--------------+------------------+-------------------+  1 row in set Time: 0.007s
  这时相当与已经备份成功,备份文件即为上次的binlog.000022日志文件。
  4:删除数量,从日志还原数据
  1) 删除ABC行delete from `myTable` where name = "ABC";
  查询以及没有ABC行列。mysql> select * from testDatabase.myTable                                                                                                               +----+----------------+----------------+----------+-------------+ | id | name           | phone          | country  | numberrange | +----+----------------+----------------+----------+-------------+ | 1  | Wade Sykes     | 1-917-342-3132 | Turkey   | 3           | | 2  | Barrett Boyer  | 1-264-304-0665 | Germany  | 9           | | 3  | Alana Kaufman  | (213) 254-4997 | India    | 0           | | 4  | Emmanuel Lopez | (543) 493-0137 | Germany  | 9           | | 5  | Timon Bauer    | 1-269-448-2772 | Pakistan | 6           | +----+----------------+----------------+----------+-------------+ 5 rows in set Time: 0.008s
  2) 恢复数据ABC行
  退出mysql,在命令端用mysqlbinlog命令恢复到binlog.000022日志状态。sudo mysqlbinlog /var/lib/mysql/binlog.000022 | sudo mysql -u root -p testDatabase;
  进入数据库再次查看数据,ABC已经恢复。mysql> select * from testDatabase.myTable                                                                                                               +----+----------------+----------------+----------+-------------+ | id | name           | phone          | country  | numberrange | +----+----------------+----------------+----------+-------------+ | 1  | Wade Sykes     | 1-917-342-3132 | Turkey   | 3           | | 2  | Barrett Boyer  | 1-264-304-0665 | Germany  | 9           | | 3  | Alana Kaufman  | (213) 254-4997 | India    | 0           | | 4  | Emmanuel Lopez | (543) 493-0137 | Germany  | 9           | | 5  | Timon Bauer    | 1-269-448-2772 | Pakistan | 6           | | 7  | ABC            | 1-917-342-3123 | KHMER    | 6           | +----+----------------+----------------+----------+-------------+ 6 rows in set Time: 0.008s
  增量备份完成。

巩俐和关晓彤简单的穿搭一样的美30年前在戛纳国际电影节上,28岁的巩俐一件白衬衫加小黑裤,独领风骚几十年,惊艳了时光,成为了经典。30年后,巴黎时装周,关晓彤一件长白色衬衫,再次惊艳了众人。娱乐圈儿的美女千姿百20232024年秀场上鞋靴的流行趋势ValentinoRockstuds超长款miumiu很多黑色和很多白色。这些是纽约时装周对配饰世界的第一印象。但它们并不是我们都知道的经典版本白色靴子采用编织皮革制成的铁丝网定制推动品质升级,创新特色鲁酒山东省白酒感官质量鉴评大会召开3月8日,2023年山东省白酒感官质量鉴评大会在聊城召开,本届大会由山东省白酒协会主办,聊城市白酒协会和山东景阳冈酒业股份有限公司协办,来自全省白酒行业的200多名白酒评委汇聚一堂碳酸锂价格接近腰斩,2023年新能源车还能降多少?儿子,爸开了几十年油车了,这几年看周围不少小伙儿都买了电车,这电车能行吗?爸,去年一年咱国内卖了近七百万台电车了,虽说电车质量参差不齐,不过你现在长途跑得少了,可以安排一辆不自燃的全国人大代表,五粮液集团(股份)公司党委书记董事长曾从钦中国白酒扩大出口需解决标准偏差文化反差政策落差贸易逆差问题本报两会报道组贺俊李静3月9日,站在行业发展全局,全国人大代表,五粮液集团(股份)公司党委书记董事长曾从钦提出关于支持中国白酒扩大出口支持中国白酒酿造技艺申报世界非物质文化遗产支持千万别错过!这三款新款手机性价比超高,强烈推荐在当今高科技发展的时代,手机成为了我们生活中必不可少的工具之一。不仅是通讯工具,还可以实现拍照娱乐办公等多种功能。然而,在众多手机品牌和型号中选择一款最适合自己的手机却是一项非常棘燃油车价格崩盘,德系日系都顶不住了短短一个月,汽车市场的价格混战时代开始了。01hr汽车江湖乱战2023,注定是近十年来消费市场价格战打得最狠的一年。刘强东高调宣布搞百亿补贴,用真金白银跟拼多多打擂台,在电商领域闹精选五款无线鼠标,百元性价比之选前言在如今的科技生活中,鼠标作为我们与世界联系的工具之一,无疑是重要的。但线材的束缚让我们在办公的时候显得不那么自由,那么,如何在预算有限的情况下购买一款实惠好用的无线鼠标?今天小珐琅表值钱吗?曾经卖不出去的珐琅表拍卖5000万!什么是珐琅工艺17世纪以来,珐琅工艺在制表行业广泛应用,以修饰表壳和表盘。珐琅又称佛郎拂郎发蓝,是以矿物质的硅铅丹硼砂长石石英等原料按照适当的比例混和,分别加入各种呈色的金属氧化物家常烙饼想要好吃不发硬,含水量是关键,10年经验分享,松软好吃家常烙饼想要好吃不发硬,含水量是关键,10年经验分享,松软好吃。烙饼馒头面条,这三样面食,都是被北方人当日常主食端上餐桌的。拿烙饼来说,北方人爱吃烙饼,就跟南方人爱吃米饭一样,烙一人均1000常常一座难求,这家餐厅到底好吃在哪?朋友们,于我而言,吃饭是生活中最为重要的一件事儿,一顿饭看似简单,却隐藏着诸多生活哲学和食物世界的奇思妙想。来杭州三年,因为工作的关系,我去过这座城大大小小的餐厅不在少数,却唯独对
把中国当做避风港?韩媒曝林孝俊消息,归化中国目的不是为了比赛目前,有韩国媒体独家爆料称韩国前奥运冠军林孝俊归化来中国,不是来参加比赛2022北京冬奥会比赛的,而是因为自己在韩国的丑闻事情,把中国当成了自己的避风港,这让不少之前看好林孝俊代表三球17分5断布里奇斯30分,黄蜂擒骑士开局两连胜黄蜂客场123112击败骑士,赛季两连胜开局。黄蜂这边罗齐尔复出,骑士加兰德受伤,卢比奥首发。开场拉梅罗鲍尔快攻打进,普拉姆利空接。对面卢比奥马尔卡宁连中三分,此后卢比奥连送助攻,杨振宁坚持回中国,就是要养老?看看他的薪资,才知道误会他了诺贝尔物理学奖是物理领域的最高荣誉,但在过去的时间当中,这一奖项长期被白人所把持,这让杨振宁的出现显得非常意外。杨振宁先生在获奖之后,并没有选择返回中国,而是留在美国很长一段时间,中国首例5胞胎夫妻,同时抚养5个孩子,如今现状如何?人们在日常生活中,除了工作上班,还有处理家庭平时油盐酱醋的事情外,还有最重要的一件事情,就是生儿育女繁衍自己的后代,在平时,一般的家庭多数都是单胎的孩子,家庭主妇中生双胞胎的很少,溥仪终身无法生育,亲弟却争气连生3子,现在个个都是国家栋梁有人欢欣有人忧,有的妃子为了爱情,而大多数都是为利益所唆使,所以她们都使出浑身解数期望宠爱,却不知皇帝早早就现已有了专业的生理启蒙教师。那么皇帝的生理启蒙教师,在教完后会有怎样的下毛主席逝世,中央特给主席曾经的秘书打电话你怎么还不来北京?1976年9月14日,距离毛主席逝世已经过去了5天的时间,供人们吊唁瞻仰毛主席遗体的人民大会堂北大厅仍旧人满为患。听闻主席逝世,全国各地的人民纷纷蜂拥而至,想再看一看毛主席的遗容许46岁贝克汉姆被爱妻亲吻脸颊,却向三儿子表歉意,让你难堪了当地时间10月22日,英格兰前国脚大卫贝克汉姆在个人社交媒体上分享了一张甜蜜的照片,他的爱妻维多利亚贝克汉姆正在亲吻他的脸颊,这对结婚已经22年的明星夫妇还真是够恩爱的。不过从小贝儿子,我为什么劝你别帮妻子带孩子一位妈妈的提醒,值得深思亲爱的儿子想了很久,我还是决定给你写这封信。起因是妈妈加班到很晚,累得快散架了,刚想躺沙发上休息一下。你爸爸走过来,满脸抱怨地说我帮你带孩子都带了好几个小时了,怎么才回来?说完,他消失3个月后,李子柒又火了这一次,她彻底赢了消失3个月之后,李子柒再一次出现在公众眼前。这一次热搜来得重量十足,她接受了央视专访。3个月前,她经历了创业以来最大的危机。8月30日,她在社交账号发文大清早报个警。秒删的回复里,李子柒出事了!3个教训,警钟长鸣01hr李子柒出事了!果然,中国文化输出第一人李子柒出事了!第一,停更李子柒在各大平台最后一条视频定格在了7月14日,也就是说,她有3个多月没有工作了。这对一个定期发布视频的博主来直追飞鹤,伊利62亿港元并购澳优,奶粉行业或现双雄争霸格局本文来源时代周报作者穆瑀宸中国乳业近年来最大一笔投资并购案尘埃落定。这或将改变奶粉行业一家独大的竞争格局。2021年10月27日晚间,澳优乳业股份有限公司(1717。HK,以下简称