6. ClustrixDB 备份恢复
ClustrixDB备份恢复:
一、传统MySQL的备份/恢复
shell> mysqldump -u user -h clustrix host --single-transaction --master-data=2 --all-databases > mydumpfile.dump
二、ClustrixDB的备份/恢复
备份testdb下面所有表到/tmp/backup目录中
MySQL [testdb]> select count(*) from userinfo_uuid;
+----------+
| count(*) |
+----------+
| 10000 |
+----------+
1 row in set (0.01 sec)MySQL [(none)]> backup testdb.* to "sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/backup" ;
Query OK, 0 rows affected (1.92 sec)
恢复:
MySQL [testdb]> drop database testdb;
Query OK, 0 rows affected (0.01 sec)MySQL [(none)]> RESTORE * FROM "sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/backup" REPLICAS = 1;
Query OK, 0 rows affected (59.74 sec)
MySQL [(none)]> RESTORE * FROM "sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/backup" REPLICAS = 2;
Query OK, 0 rows affected (1 min 52.63 sec)MySQL [testdb]> use testdb; show tables;
+------------------+
| Tables_in_testdb |
+------------------+
| userinfo_uuid |
+------------------+
1 row in set (0.02 sec)MySQL [testdb]> select count(*) from userinfo_uuid;
+----------+
| count(*) |
+----------+
| 10000 |
+----------+
1 row in set (0.01 sec)
提高备份性能,默认备份进程一次备份一张表
MySQL [(none)]> show variables like 'bsackup_backup_concurrency';
+---------------------------+-------+
| Variable_name | Value |
+---------------------------+-------+
| backup_backup_concurrency | 1 |
+---------------------------+-------+
1 row in set (0.00 sec)MySQL [(none)]> backup scloud.*,test.* to "sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/backup" ;
Query OK, 0 rows affected (2.12 sec)MySQL [(none)]> \! sudo rm -rf /tmp/backup
MySQL [(none)]> set global backup_backup_concurrency=2;
Query OK, 0 rows affected (0.01 sec)MySQL [(none)]> backup scloud.*,test.* to "sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/backup" ;
Query OK, 0 rows affected (1.51 sec)
查看备份文件信息:
MySQL [system]> SELECT * from system.backups where source="sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/"\G
*************************** 1. row ***************************
source: sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/
backup: backup
cluster_name: cld32d48dc6ff9c79d
version: clustrix-9.2
status: COMPLETED
start_time: 2019-11-28 03:23:41.084376
completed_time: 2019-11-28 03:23:42.581939
bytes: 179548772
1 row in set (1.94 sec)
查看备份文件中表信息
MySQL [system]> SELECT * from system.backup_tables where source="sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/"\G;
*************************** 1. row ***************************
source: sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/
backup: backup
db: scloud
table: sbtest1
bytes: 179545464
*************************** 2. row ***************************
source: sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/
backup: backup
db: test
table: foo
bytes: 68
*************************** 3. row ***************************
source: sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/
backup: backup
db: test
table: sb2
bytes: 1608
*************************** 4. row ***************************
source: sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/
backup: backup
db: test
table: sbtest1
bytes: 1584
*************************** 5. row ***************************
source: sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/
backup: backup
db: test
table: t1
bytes: 26
*************************** 6. row ***************************
source: sftp://scloudusr:Scloud201!@10.1.3.88:2022/tmp/
backup: backup
db: test
table: t2
bytes: 22
6 rows in set (1.95 sec)
影响备份恢复的global参数:
|
Name |
Description |
Default Value |
|---|---|---|
| backup_backup_concurrency |
The number of tables that can be backed up simultaneously. |
1 |
| backup_restore_concurrency | The maximum number of slices restored concurrently on each node. | 16 |
| backup_write_compression_level | Compression level from 1 (fastest) to 9 (best compression) | 6 |
备份/恢复的错误列表
Backup
|
Error |
Meaning |
|---|---|
Bad Parameter.:"Backup..." is invalid Bad parameter.: *.* is repeated in the list Bad parameter.: DB "..." is included multiple times Bad parameter.: "..." is included multiple times Bad parameter.: nothing to back up! Unrecognized backup url scheme: ... syntax error: ... |
Something is wrong with the BACKUP statement, please double check |
Generic Error: no user DB found Bad parameter.: Hidden database '...' cannot be backed up No such database: '...' Not found: Object "..." does not exist Not found: There are more than one "..." Backup only supported for TABLES right now: ... |
Trying to backup something that cannot be backed-up, or doesn't exist |
Representation is unavailable: ... Generic Backup Error: Couldn't find baserep for ... Generic Backup Error: Couldn't find columns for ... |
Trying to backup something currently unavailable |
Bad backup URL: ... |
Unable to parse URL or connect to FTP server |
Backup already exists in create: ... |
There is already a backup at that location |
Upload of slice was truncated on remote host: ... |
File written to backup was shorter than it should have been |
EXCLUDING *.* is invalid |
Would backup nothing |
“...” is repeated in the EXCLUDING clause |
Object is excluded more than once |
Restore
|
Error |
Meaning |
|---|---|
Bad parameter.: "RESTORE ..." is invalid Bad parameter.: Global wildcard *.* is used together with other targets Bad parameter.: DB "..." already exists on server or in the target list Bad parameter.: Target "..." already exists Bad parameter.: "..." is repeated in the target list Generic Backup Error: newdbnames array length must be same as dbnames Unrecognized backup url scheme: ... syntax error: ... |
Something is wrong with the RESTORE statement |
Bad backup URL: ... |
Unable to parse URL or connect to FTP server |
Unable to open backup for url: ... |
Cannot open backup directory on FTP server |
Backup not available for restore: ... |
This backup did not complete successfully |
DB not found in backup: ... |
Trying to restore something that is not in the backup |
Object not found in backup: ... |
|
DB already exists in the target location: ... Generic Backup Error: could not parse create statement: ... |
Cannot create object |
Unable to validate CREATE statement: ... |
Created object does not match backed-up object |
Generic Backup Error: could not parse column types from backup table "..." Column type mismatch during restore: ... Hash layout mismatch during restore: ... |
|
Unable to locate stored CRC of file: ... Backup CRC Mismatch: ... Unable to locate uncompressed length of file: ... |
Backup is corrupt |
Restore truncated by incomplete read: ... |
Read too little data for a row |
“...” is repeated in the EXCLUDING clause |
Object is excluded more than once |
Relation not found: While restoring object db_name.obj_name... |
The object noted references another that does not exist. The missing object is shown in parenthesis.
For example, this error occurs if a table was excluded from the backup, but the associated views or triggers were not. |
Zlib errors
| Error | Meaning |
|---|---|
Internal Error: Unexpected buffering stop |
Internal buffering error |
Internal Error: Unexpected stop |
FTP Errors
|
Error |
Meaning |
|---|---|
File not found |
|
FTP Socket Closed |
|
Invalid argument to API |
Bad internal usage of our FTP interface |
Socket timeout while waiting for server response |
|
Unexpected error response from server |
|
Unexpected response to PASS command |
|
Unexpected response to USER command |
|
Unexpected temporary error response from server |
SFTP Errors
|
Error |
Meaning |
|---|---|
|
Error |
Meaning |
A file that isn’t a directory was specified when a directory is required |
|
An attempt was made to modify something on a read-only file system |
|
Bad file descriptor |
|
Broken pipe |
There is no process reading from the other end of a pipe |
Directory not empty, where an empty directory was expected |
Typically, this error occurs when you are trying to delete a directory |
File exists |
An existing file was specified in a context where it only makes sense to specify a new file |
No space left on device |
Write operation on a file failed because the disk is full |
No such device or address |
The system tried to use the device represented by a file you specified, and it couldn’t find the device |
No such file or directory |
|
Permission denied |
|
SSH authentication failed |
|
SSH timeout |
The SSH server closed the connection due to a timeout |
The socket is not connected to anything |
You get this error when you try to transmit data over a socket, without first specifying a destination for the data |
Too many levels of symbolic links were encountered in looking up a file name |
This often indicates a cycle of symbolic links |
Unexpected SSH error |
Something happened during the SSH protocol that we didn't expect |
6. ClustrixDB 备份恢复的更多相关文章
- MySQL 系列(四)主从复制、备份恢复方案生产环境实战
第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...
- 基于MySQL MEB的备份恢复
MEB(MySQL Enterprise Backup)是MySQL商业版中提供的备份工具,属于物理备份. 同XtraBackup一样,mysqlbackup的使用过程同样包含如下三个步骤: 备份(- ...
- Xtrabackup原理及使用innobackupex进行MySQL数据库备份恢复
Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具. Xtrabackup中主要包含两个工 ...
- 在Linux操作系统下备份恢复技术的应用 转自https://yq.aliyun.com/articles/50205?spm=5176.100239.blogcont24250.9.CfBYE9
摘要: 安全防护:在Linux操作系统下备份恢复技术的应用 原文参见:http://linux.chinaunix.net/techdoc/system/2005/12/19/925898.shtm ...
- mongodb 的备份恢复导入与导出
导入导出 use hndb; db.s.save({name:'李四',age:18,score:80,address:'郑州'}); db.s.save({name:'李三',age:8,score ...
- [转]PLSQL Developer备份恢复oracle数据
本文转自:http://www.cnblogs.com/iampkm/archive/2013/06/09/3128273.html 使用PL sql提供的功能可以快速的备份恢复oracle数据. 1 ...
- MongoDB学习(三)数据导入导出及备份恢复
这几天想着公司要用MongoDB,自然就要用到数据导入导出,就自己学习了一下. 在Mongo学习(二)中就讲到了在bin目录下有一些工具,本篇就是使用这些工具进行数据的导入导出及备份恢复. 注意:以下 ...
- Oracle RMAN备份恢复指导书
目 录 1 目的与范围... 1 2 术语和定义... 1 3 角色和职责... 2 4 使用RMAN备份数据库... 2 4.1.1 检查数据库模式... 2 4.1.2 连接到target数据库. ...
- 中小型数据库 RMAN CATALOG 备份恢复方案(二)
中小型数据库呈现的是数据库并发少,数据库容量小,版本功能受限以及N多单实例等特点.尽管如此,数据库的损失程度也会存在零丢失的情形.企业不愿意花太多的钱又要保证数据库的可靠稳定,可是苦煞了我这些搞DB的 ...
随机推荐
- AttributeError: 'dict' object has no attribute 'status_code'
前端AJAX请求数据,提示错误:“AttributeError: 'dict' object has no attribute 'status_code'”. 原因:是提示返回对象dict没有“sta ...
- map member functions
http://www.cplusplus.com 搜了才发现map的成员函数这么多orz,跟着cplusplus按字典序走一遍叭(顺序有微调orz <1> map::at (c++11) ...
- python中几个常见的魔法方法
首先,什么是魔法方法呢?在python中方法名如果是__xxxx__()的,那么就有特殊的功能,因此叫做"魔法"方法. __ init__()方法 当一个实例被创建的时候调用的初始 ...
- kafka 教程(一)-初识kafka
消息队列 MQ 消息队列就是 消息 message 加 队列 queue,是一种消息传输的容器,提供生产和消费 API 来存储和获取消息. 消息队列分两种:点对点(p2p).发布订阅(pub/sub) ...
- luogu P4631 [APIO2018] Circle selection 选圆圈
传送门 那个当前半径最大的圆可以用堆维护.这道题一个想法就是优化找和当前圆有交的圆的过程.考虑对于所有圆心建KD-tree,然后在树上遍历的找这样的点.只要某个点子树内的点构成的矩形区域到当前圆心的最 ...
- js对时间戳的处理 获取时间,昨天,今天,明天,时间不同格式
1.获取昨天,今天,明天的时间 //昨天的时间 var day1 = new Date(); day1.setTime(day1.getTime()-24*60*60*1000); var s1 = ...
- 基于SOA的图书商城系统分析
1.1什么是SOA架构? SOA( Service Oriented Architecture)是一种面向服务的分布式架构,将每个实现特定功能的工程拆分为服务层和表现层.服务层负责处理业务逻辑,对外提 ...
- FMCJ450-基于ADRV9009的射频收发模块
FMCJ450-基于ADRV9009的射频收发模块 一.板卡概述 接收路径包括两个具有动态范围的独立式宽带宽直接转换接收器.该器件还支持宽带宽分时观察路径接收器,供在 TDD 应用中使用.完整的接收子 ...
- Centos7下常用配置命令
1.禁用ipv6 Step 1: add this rule in /etc/sysctl.conf : net.ipv6.conf.all.disable_ipv6=1 Step 2: add th ...
- Ubuntu无法安装nginx
1.问题Reading package lists... DoneBuilding dependency tree Reading state information... DoneSom ...