微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

mariadb-backup (restore) 基础问题——需要备份哪些数据库,以及多个独立数据库的正确还原程序/顺序是什么?

如何解决mariadb-backup (restore) 基础问题——需要备份哪些数据库,以及多个独立数据库的正确还原程序/顺序是什么?

我正在运行 MariaDB 10.5 服务器。

我创建了 2 个测试数据库

mariadb -e "show databases;"
    +----------------------------+
    | Database                   |
    +----------------------------+
    | information_schema         |
    | MysqL                      |
    | performance_schema         |
    | test1                      |
    | test2                      |
    +----------------------------+

我正在尝试直接了解我的工作,不需要备份即可完全恢复。

(1) 当我备份所有数据库

mariadb-backup --backup --target-dir="all"

我结束了

tree -L 1 all/
    all/
    ├── aria_log.00000001
    ├── aria_log_control
    ├── backup-my.cnf
    ├── ib_buffer_pool
    ├── ibdata1
    ├── ib_logfile0
    ├── MysqL/
    ├── performance_schema/
    ├── test1/
    ├── test2/
    ├── xtrabackup_binlog_info
    ├── xtrabackup_checkpoints
    └── xtrabackup_info

IIUC,我可以从这台完全恢复我的整个服务器,完整备份。 任何运行 MariaDB 的机器,但仅限于相同版本的 MariaDB 服务器。

正确吗?

(2) 在那个备份中,我没有得到“information_schema”,但是得到了“performance_schema”。不知道为什么。

是三个数据库中的每一个

information_schema
MysqL
performance_schema

需要恢复吗?我从在线帖子中收到了很多关于此的信息。并且在主文档中还没有找到“执行此操作”。

(3) 如果我单独备份 testDBs

mariadb-backup --backup --databases="test1" --target-dir="bkup1"
mariadb-backup --backup --databases="test2" --target-dir="bkup2"

我明白

tree -L 1 bkup1/ bkup2/

    bkup1/
    ├── aria_log.00000001
    ├── aria_log_control
    ├── backup-my.cnf
    ├── ib_buffer_pool
    ├── ibdata1
    ├── ib_logfile0
    ├── test1/
    ├── xtrabackup_binlog_info
    ├── xtrabackup_checkpoints
    └── xtrabackup_info

    bkup2/
    ├── aria_log.00000001
    ├── aria_log_control
    ├── backup-my.cnf
    ├── ib_buffer_pool
    ├── ibdata1
    ├── ib_logfile0
    ├── test2/
    ├── xtrabackup_binlog_info
    ├── xtrabackup_checkpoints
    └── xtrabackup_info

如果我要破坏原始服务器的数据,并从这两个恢复, 这还不足以重新启动和运行,对吗? 为此,我还需要 1 个或多个我在 (2) 中询问的 DB?

(4) 如果我进行了 2 个单独的备份,就像在 (3) 中一样,它们每个都包含

├── aria_log.00000001
├── aria_log_control
├── backup-my.cnf
├── ib_buffer_pool
├── ibdata1
├── ib_logfile0
├── xtrabackup_binlog_info
├── xtrabackup_checkpoints
└── xtrabackup_info

即使是相同的名字,如果它们在不同的时间被IIUC取用,它们的内容也可能不同。

如果我将“bkup1/”恢复到主服务器,它会覆盖服务器上的那些文件。 然后,如果我恢复“bkup2/”,它会再次覆盖服务器上的那些文件

恢复单独数据库备份的正确方法是什么,而不是最终破坏主服务器上所需的数据?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。