首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与MySQL Shell相关的几个问题

问与MySQL Shell相关的几个问题
EN

Database Administration用户
提问于 2020-11-18 21:33:29
回答 1查看 34关注 0票数 0

在MY文档实例转储实用程序、模式转储实用程序和表转储实用程序中

  1. 兼容性选项- strip_tablespaces是否删除对表空间的所有引用,或者只删除GRANT语句中的引用。请您提供一个示例,说明此选项是如何更改转储语句的吗?
  2. 一致的

文档提到备份锁是在备份之前释放的,那么如何进行一致的备份呢?提到了具有一致快照的启动事务。拍快照了吗?如果是,内存需求是什么?

谢谢!

EN

回答 1

Database Administration用户

发布于 2020-11-18 23:38:42

  1. 它将它们从GRANT / CREATE语句中删除,这与您所链接的文档以及以下文档相同:导入和导出数据库
  2. 当根据您链接的文档启动备份时,只会释放global read lock:

当所有线程启动它们的事务时,将锁定实例以进行备份,并释放全局读锁。

换句话说,数据是安全读取的,但很可能仍然持有其他锁,防止在备份过程中更改数据或模式(也称为阻塞事务)。

这个网站详细介绍了全局锁,特别是在MySQL中读取锁,这与这个问题有关:对MySQL全局锁和表锁的深入理解。

具体来说,本部分提到锁定了哪种类型的语句:

全局锁是锁定整个数据库实例。MySQL提供了一种添加全局读锁的方法。带有读锁(FTWRL)的命令isFlush表。当需要使整个库只读时,可以使用此命令,然后其他线程的下列语句将被阻塞:数据更新语句(数据添加和删除)、数据定义语句(包括表构建、表结构修改等)。和用于更新类事务的提交语句。

因此,从技术上讲,数据是一个及时的快照,因为在备份期间不允许其他事务更改数据或架构。所需的内存量将取决于备份的数据量。

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/279932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档