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/backupREPLICAS = 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 备份恢复的更多相关文章

  1. MySQL 系列(四)主从复制、备份恢复方案生产环境实战

    第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...

  2. 基于MySQL MEB的备份恢复

    MEB(MySQL Enterprise Backup)是MySQL商业版中提供的备份工具,属于物理备份. 同XtraBackup一样,mysqlbackup的使用过程同样包含如下三个步骤: 备份(- ...

  3. Xtrabackup原理及使用innobackupex进行MySQL数据库备份恢复

    Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具. Xtrabackup中主要包含两个工 ...

  4. 在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 ...

  5. mongodb 的备份恢复导入与导出

    导入导出 use hndb; db.s.save({name:'李四',age:18,score:80,address:'郑州'}); db.s.save({name:'李三',age:8,score ...

  6. [转]PLSQL Developer备份恢复oracle数据

    本文转自:http://www.cnblogs.com/iampkm/archive/2013/06/09/3128273.html 使用PL sql提供的功能可以快速的备份恢复oracle数据. 1 ...

  7. MongoDB学习(三)数据导入导出及备份恢复

    这几天想着公司要用MongoDB,自然就要用到数据导入导出,就自己学习了一下. 在Mongo学习(二)中就讲到了在bin目录下有一些工具,本篇就是使用这些工具进行数据的导入导出及备份恢复. 注意:以下 ...

  8. Oracle RMAN备份恢复指导书

    目 录 1 目的与范围... 1 2 术语和定义... 1 3 角色和职责... 2 4 使用RMAN备份数据库... 2 4.1.1 检查数据库模式... 2 4.1.2 连接到target数据库. ...

  9. 中小型数据库 RMAN CATALOG 备份恢复方案(二)

    中小型数据库呈现的是数据库并发少,数据库容量小,版本功能受限以及N多单实例等特点.尽管如此,数据库的损失程度也会存在零丢失的情形.企业不愿意花太多的钱又要保证数据库的可靠稳定,可是苦煞了我这些搞DB的 ...

随机推荐

  1. python学习之函数(二)

    4.4.6 动态传参 动态传参是针对形参而言 1.动态位置参数 ​ 在静态位置参数时,我们知道,定义函数时有几个位置参数,调用时就必须给几个实参,不能多也不能少.有时候,实际应用过程中,参数往往不能固 ...

  2. Java锁机制ReentrantLock

    ReentrantLock 锁常用于保证程序的人为顺序执行. 写一个类模拟ReentrantLock类的功能 class MyLock{ private boolean lock = false; p ...

  3. windows系统安装的两个阶段

    windows visa .windows7.windows server 2008系统安装的两个阶段1.Boot.WIM----Windows PE系统.提供了windows7安装向导! 2.Ins ...

  4. 【Qt开发】QSplitter的使用和设置

     Qt库版本:5.2.1     Qt Creator版本:3.0.1 1 QSplitter的用途 QSplitter使得用户可以通过拖动子窗口之间的边界来控制它们的大小,例如 图1 窗口拆分示意图 ...

  5. 【VS开发】【图像处理】基于灰度世界、完美反射、动态阈值等图像自动白平衡算法的原理、实现及效果

    基于灰度世界.完美反射.动态阈值等图像自动白平衡算法的原理.实现及效果      白平衡是电视摄像领域一个非常重要的概念,通过它可以解决色彩还原和色调处理的一系列问题.白平衡是随着电子影像再现色彩真实 ...

  6. 【VS开发】【智能语音处理】特定人语音识别算法—DTW算法

    DTW(动态时间弯折)算法原理:基于动态规划(DP)的思想,解决发音长短不一的模板匹配问题.相比HMM模型算法,DTW算法的训练几乎不需要额外的计算.所以在孤立词语音识别中,DTW算法仍得到广泛的应用 ...

  7. python 并发编程 多线程 GIL与Lock

    GIL与Lock Python已经有一个GIL来保证同一时间只能有一个线程来执行了,为什么这里还需要互斥锁lock? 锁的目的是为了保护共享的数据,同一时间只能有一个线程来修改共享的数据 GIT保证了 ...

  8. 【Linux 网络编程】端口

    (1)众所周知的端口:0~1023,这些端口由IANA分配和控制它们紧密绑定用于一些服务.常用这些端口的通讯    明确表明了某些协议.例如:21端口为ftp服务端口. (2)注册端口:1024~49 ...

  9. java按值传递?

    原文链接:https://blog.csdn.net/scholar_man/article/details/80900212 在Java中,参数都是按值传递的.被传递到方法中的拷贝值,要不就是一个引 ...

  10. python正则表达式re 中m.group和m.groups的解释

    转载:http://www.cnblogs.com/kaituorensheng/archive/2012/08/20/2648209.html 先看代码instance: >>> ...