mysql备份去掉一个库_MySQL备份与恢复(3)mysqldump备份多个库

一、mysqldump的工作原理、

利用mysqldump命令备份数据的过程,实际上就是把数据从mysql库以逻辑的sql语句的形式直接输出或生成备份的文件的过程

利用这个备份文件恢复的时候的原理?就是把备份的sql命令再执行一遍。

二、备份多个库

mysql>show databases;+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| oldboy |

| oldboy_gbk |

| oldboy_utf8 |

| performance_schema |

+--------------------+

6 rows in set (0.00sec)

mysql>quit

Bye

[root@localhost~]# mysqldump -uroot -pdubin -B oldboy oldboy_gbk|gzip >/opt/all_bak.sql.gz

[root@localhost~]# ls -l /opt/all_bak.sql.gz-rw-r--r--. 1 root root 1374 9月 21 11:50 /opt/all_bak.sql.gz

[root@localhost~]#

三、如何做分库备份?

分库备份实际上就是执行一个备份语句备份一个库,如果数据库里有多个库,就执行多条相同的备份单个库的备份语句就可以备份多个库了,注意每个库都可以用对应备份的库作为库名,结尾加 .sql。备份多个库的命令如下:

mysqldump -uroot -pdubin -B oldboy ……

mysqldump-uroot -pdubin -B oldboy_gbk ……

分库备份过程

[root@localhost ~]# mysql -uroot -pdubin -e "show databases;"

+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| oldboy |

| oldboy_gbk |

| oldboy_utf8 |

| performance_schema |

+--------------------+[root@localhost~]# mysql -uroot -pdubin -e "show databases;"|grep -Evi "database|infor|perfor"mysql

oldboy

oldboy_gbk

oldboy_utf8

[root@localhost~]# mysql -uroot -pdubin -e "show databases;"|grep -Evi "database|infor|perfor"|sed 's#^#mysqldump -uroot -pdubin -B #g'mysqldump-uroot -pdubin -B mysql

mysqldump-uroot -pdubin -B oldboy

mysqldump-uroot -pdubin -B oldboy_gbk

mysqldump-uroot -pdubin -B oldboy_utf8

[root@localhost~]# mysql -uroot -pdubin -e "show databases;"|grep -Evi "database|infor|perfor"|sed 's#^([a-z].*$)#mysqldump -uroot -pdubin -B \1 >/opt/\1.sql#g'sed:-e 表达式 #1,字符 59:“s”命令的RHS非法引用\1[root@localhost~]# mysql -uroot -pdubin -e "show databases;"|grep -Evi "database|infor|perfor"|sed -r 's#^([a-z].*$)#mysqldump -uroot -pdubin -B \1 >/opt/\1.sql#g'mysqldump-uroot -pdubin -B mysql >/opt/mysql.sql

mysqldump-uroot -pdubin -B oldboy >/opt/oldboy.sql

mysqldump-uroot -pdubin -B oldboy_gbk >/opt/oldboy_gbk.sql

mysqldump-uroot -pdubin -B oldboy_utf8 >/opt/oldboy_utf8.sql

[root@localhost~]# mysql -uroot -pdubin -e "show databases;"|grep -Evi "database|infor|perfor"|sed -r 's#^([a-z].*$)#mysqldump -uroot -pdubin -B \1|gzip >/opt/\1.sql.gz#g'mysqldump-uroot -pdubin -B mysql|gzip >/opt/mysql.sql.gz

mysqldump-uroot -pdubin -B oldboy|gzip >/opt/oldboy.sql.gz

mysqldump-uroot -pdubin -B oldboy_gbk|gzip >/opt/oldboy_gbk.sql.gz

mysqldump-uroot -pdubin -B oldboy_utf8|gzip >/opt/oldboy_utf8.sql.gz

[root@localhost~]# mysql -uroot -pdubin -e "show databases;"|grep -Evi "database|infor|perfor"|sed -r 's#^([a-z].*$)#mysqldump -uroot -pdubin -B \1|gzip >/opt/\1.sql.gz#g'|bash-- Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.

[root@localhost~]# ll /opt/总用量196

-rw-r--r--. 1 root root 1374 9月 21 11:50all_bak.sql.gz-rw-r--r--. 1 root root 2371 9月 21 08:45mysql_bak_B_compact.sql-rw-r--r--. 1 root root 4651 9月 21 08:45mysql_bak_B.sql-rw-r--r--. 1 root root 4508 9月 21 08:43mysql_bak.sql-rw-r--r--. 1 root root 1355 9月 21 08:47mysql_bak.sql.gz-rw-r-----. 1 root root 498 9月 20 22:17 mysqlbin_oldboy.000001

-rw-r--r--. 1 root root 144535 9月 21 12:01mysql.sql.gz-rw-r--r--. 1 root root 203 9月 20 08:46oldboy_bak1.sql-rw-r--r--. 1 root root 2826 9月 20 08:46oldboy_bak.sql-rw-r--r--. 1 root root 512 9月 21 12:01oldboy_gbk.sql.gz-rw-r--r--. 1 root root 1354 9月 21 12:01oldboy.sql.gz-rw-r--r--. 1 root root 512 9月 21 12:01oldboy_utf8.sql.gz

[root@localhost~]# mysql -uroot -pdubin -e "show databases;"|grep -Evi "database|infor|perfor"|sed -r 's#^([a-z].*$)#mysqldump -uroot -pdubin --event -B \1|gzip >/opt/\1.sql.gz#g'|bash

[root@localhost~]# mkdir /opt/bak

[root@localhost~]# mysql -uroot -pdubin -e "show databases;"|grep -Evi "database|infor|perfor"|sed -r 's#^([a-z].*$)#mysqldump -uroot -pdubin --event -B \1|gzip >/opt/bak/\1.sql.gz#g'|bash

[root@localhost~]# ll /opt/bak

总用量156

-rw-r--r--. 1 root root 144570 9月 21 12:03mysql.sql.gz-rw-r--r--. 1 root root 534 9月 21 12:03oldboy_gbk.sql.gz-rw-r--r--. 1 root root 1371 9月 21 12:03oldboy.sql.gz-rw-r--r--. 1 root root 533 9月 21 12:03oldboy_utf8.sql.gz

[root@localhost~]#

mysql -uroot -pdubin -e "show databases;"|grep -Evi "database|infor|perfor"|sed -r 's#^([a-z].*$)#mysqldump -uroot -pdubin --event -B \1|gzip >/opt/bak/\1.sql.gz#g'|bash

8068125770be83a84f899a58e87626db.png

分库备份的意义何在?

有时一个企业的数据库里会有多个库,例如(www,bbs,blog),但是出问题时候的很可能是一个库,如果在备份时把所有的库都备份成一个数据文件的话,恢复某一个库的数据时就比较麻烦了。

shell脚本实现分表分库备份的脚本

[root@localhost ~]# vi fenku.shfor dbname in `mysql -uroot -pdubin -e "show databases;"|grep -Evi "database|infor|perfor"`domysqldump-uroot -pdubin --event -B $dbname|gzip >/opt/bak/${dbname}.sql.gz

done

root@localhost ~]# rm -f /opt/bak/*[root@localhost ~]# sh fenku.sh

[root@localhost ~]# ll /opt/bak

总用量 156

-rw-r--r--. 1 root root 144569 9月 21 12:12 mysql.sql.gz

-rw-r--r--. 1 root root 534 9月 21 12:12 oldboy_gbk.sql.gz

-rw-r--r--. 1 root root 1370 9月 21 12:12 oldboy.sql.gz

-rw-r--r--. 1 root root 533 9月 21 12:12 oldboy_utf8.sql.gz

[root@localhost ~]#

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/555965.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于引入 js 文件

一、说说 script 标签的几个常用属性 async 表示立即下载该 js 文件,但不妨碍页面中的其他操作(只对外部 js 文件有效)defer 表示该 js 文件可以延迟到整个页面被解析并显示之后再执行(只对外部 js 文件有效)src 指定…

mysql where条件使用了or会不会扫全表

mysql where条件使用了or会不会扫全表 是的 但是使用索引在某些情况下可以避免的: 1、where 语句里面如果带有or条件, myisam表能用到索引, innodb不行。 2、必须所有的or条件都必须是独立索引 3、用UNION替换OR (适用于索引列) 4、用in来替换or 不管用不…

mysql 数据库 文件夹_mysql 数据库 文件夹

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里云数据库专家保驾护航,为用户…

JS 深浅拷贝

在日常开发当中那面会遇到对象拷贝问题 一、对象浅拷贝(shallowClone) 使用 Object.assign 把源对象自身的、可枚举的属性拷贝到目标对象上 var person {name: 张三,age: 18,sex: 男,hobbies: [篮球, 足球, 排球],sayName: function () {console.log(t…

mysql事务回滚后,自增ID仍然增加

事务回滚后,自增ID仍然增加 回滚后,自增ID仍然增加。 比如当前ID是7,插入一条数据后,又回滚了。 然后你再插入一条数据,此时插入成功,这时候你的ID不是8,而是9. 因为虽然你之前插入回滚&#…

mysql is needed by_libnuma.so.1()(64bit) is needed by mysql-community-server-5.7.9-1.el6.x86_64

今天在安装 MYSQL -5.7.9的时候,rpm -Uvh mysql-community-server-5.7.9-1.el6.x86_64.rpm提示:warning: mysql-community-server-5.7.9-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEYerror: Failed dependencies:libnuma.so…

MySQL 查询速度慢与性能差的原因与解决方法

MySQL 查询速度慢与性能差的原因与解决方法 更新时间:2019年09月26日 18:05:47 作者:Microtiger 随着网站数据量与访问量的增加,MySQL 查询速度慢与性能差的问题就日渐明显,这里为大家分享一下解决方法,需要的朋友可以参考下 一…

重写JS数组常用方法

Array.prototype.forEach 没有返回值 参数1:遍历数组时需要执行的回调函数 回调函数参数1:数组的每一项 item回调函数参数2:每一项的下标 index回调函数参数3:整个数组 array 参数2:这个回调函数的 this 指向 Array.pr…

mysql 时间戳 2038_mysql数据库的timestamp为什么从1970到2038的某一时间?某一时间是指什么时间?过了这个时间之后怎么办?-问答-阿里云开发者社区-阿里云...

首先你要理解什么是时间戳。时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至某一时间点的总秒数。例如北京时间2015-12-31 17:00:00的时间戳是1451552400,就是指从北京时间1970-01-01 08:00:00到2015-12-31 17:00:00已经…

MySQL 批量插入数据,单次插入多少条数据效率最高

文章目录一、前言二、批量插入前准备1、插入到数据表的字段2、计算一行字段占用的空间3、在数据里做插入操作的时候,整体时间的分配三、批量插入数据测试1、SQL语句的大小限制2、查看服务器上的参数:3、计算一次能插入的最大行记录4、测试插入数据比对&a…

重写 typeof 方法

重写 typeof 方法 function myTypeof(str) {var toStr Object.prototype.toString,typeofStr typeof(str),typeTemp {[object Object]: object, // 检测对象[object String]: object-string, // 检测包装类 String[object Number]: object-number, // 检测包装类 Number[ob…

mysql+跨服务器+写入_MySQL中使用FREDATED引擎实现跨数据库服务器、跨实例访问

跨数据库服务器,跨实例访问是比较常见的一种访问方式,在Oracle中可以通过DB LINK的方式来实现。对于MySQL而言,有一个FEDERATED存储引擎与之相对应。同样也是通过创建一个链接方式的形式来访问远程服务器上的数据。本文简要描述了FEDERATED存…

MYSQL避免全表扫描__如何查看sql查询是否用到索引(mysql)

MYSQL避免全表扫描 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描 如:select id f…

字符串数组排序

字符串数组排序 var arr [chifan, 抽yan, he酒, 烫头, Coding2233];/*** 计算字符串字节数*/ function getBytesCount(str) {var bytesCount str.length;for (var i 0; i < bytesCount; i) {var ASCIINum str.charCodeAt(i);ASCIINum > 255 && bytesCount;}…

mysql主键unsigned_mysql – 主键应该总是unsigned?

MySQL支持可选的SERIAL数据类型(假定与PostgreSQL兼容&#xff0c;因为SERIAL不是标准的ANSI SQL)。此数据类型只是创建BIGINT UNSIGNED的简写。去试试吧&#xff1a;CREATE TABLE test.foo (foo_id SERIAL PRIMARY KEY);SHOW CREATE TABLE test.foo;CREATE TABLE test.foo (fo…

@SuppressWarnings使用的正确姿势

SuppressWarnings比较常见&#xff0c;理解和使用起来都很简单。 但是就这这个机会系统的整理一下。 通过源码可以看出&#xff0c;支持在类、属性、方法、参数、构造方法、本地变量上使用。 SuppressWarnings注解的使用有三种&#xff1a; SuppressWarnings(“unchecked”)…

DOM - 找出当前节点的子元素节点和找出当前节点的第 n 层父级元素

一、找出当前节点的子元素节点 思路&#xff1a; 先拿到当前节点的子节点集合循环遍历这些节点&#xff0c;找出元素节点并添加到元素集合中如果传了数字参数&#xff0c;就返回元素集合中对应下标的节点没传参数就返回整个元素集合 Element.prototype.getChildNode functio…

mysql5.7.3安装教程_最新mysql 5.7.23安装配置图文教程

2018年最新MySQL5.7详细安装与配置&#xff0c;总共分为四步&#xff0c;其中环境变量配置不是必须的。1、安装包下载2、安装过程3、环境变量配置4、连接测试一、官网下载MYSQL安装包2.选择合适你电脑系统的版本进行安装。如果有网络&#xff0c;选择在线安装的版本&#xff0c…

MySQL 添加where 1= 1 是否会引起索引失效

背景 在检查数据库的执行效率的时候&#xff0c;发现了一条查询极慢的查询sql。sql的例子如下&#xff1a; EXPLAIN SELECT * FROM user_point_detail_info WHERE 11 AND deleted FALSE AND app_id 2010001 AND point > 10 AND add_time BETWEEN "2021-03-12 17:0…

DOM - 查看当前节点下有无子元素节点

for 循环版 Element.prototype.hasChildren function () {const childNodes this.childNodes,len childNodes.length;for (let i 0; i < len; i) {const item childNodes[i];if (item.nodeType 1) {return true;}}return false; }while 循环版 Element.prototype.ha…