MySQL 备份:我可以将单个 MyISAM 表文件复制到另一台具有不同 MySQL 版本和不同操作系统的服务器吗?

2023-12-24

我的意思是复制单个 MyISAM 表文件是:
(关闭 mysqld 并将 .frm、.myd 和 .myi 文件从一个数据库文件夹复制到另一个数据库文件夹)


问题:
(a) 我可以使用这种方式将MySQL数据库文件夹从一台服务器备份到另一台具有不同MySQL版本的服务器吗?

(b) 这个备份文件可以移动到不同的操作系统吗? (示例:debian 到 centos)


仅在具有相同内容的服务器版本之间进行文件级复制 MyISAM 表:
- CPU“字节序”(SPARC!= x86)
- MySQL版本无需转换即可升级(由于索引结构更改,5.0.48复制到5.0.52是不好的,但5.0.52复制到5.1.45是有效的)。

当心竞争条件...您可能正在使用 FTP 或其他一些工具访问文件,而数据库正在读取表。即使是最良性的表读取,.MYI 中也会更新表“计数器”。

我发现以下内容将确保任何文件级操作的 MyISAM 表的完整性:

LOCK TABLE x WRITE;
FLUSH TABLE x; -- closes all file handles into table by mysql.
   < perform file-level manipulations >
FLUSH TABLE x; -- A 'stat' of the table occurs and info-schema is updated appropriately.
UNLOCK TABLES;

如果您不锁定写入表,则当您进行文件级复制/操作时,mysql 可能会访问它(读取或写入)。

这也与允许 HOT 数据库上的表使用“myisampack”、“myisamchk”相同的机制,即使禁用了外部锁定,也无需担心损坏。

——J·乔根森——

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL 备份:我可以将单个 MyISAM 表文件复制到另一台具有不同 MySQL 版本和不同操作系统的服务器吗? 的相关文章

  • PHP MySQL 使用选项/选择 HTML 表单标签进行多重搜索查询

    我正在尝试使用两个搜索字段设置基本的 MySQL LIKE 搜索 我不想拥有它 所以它有多个可选搜索字段 例如if isset POST city isset POST name 我不知道如何用 HTML 来做到这一点
  • 如何检测Mysql/innodb中的死锁?

    我知道在 Innodb 中使用事务时不可避免地会发生死锁 并且如果应用程序代码正确处理死锁 它们是无害的 正如手册所说 只需再试一次 所以我想知道 如何检测死锁 死锁是否会发出一些特殊的 mysql 错误号 如果重要的话 我正在使用 PHP
  • SQL查询查找表的主键?

    我怎样才能找到哪一列首要的关键使用查询来创建表 这是重复的question https stackoverflow com questions 893874 mysql determine tables primary key dynami
  • 检查已安装的软件包,如果没有找到则安装

    我需要检查已安装的软件包 如果未安装则安装它们 RHEL CentOS Fedora 示例 rpm qa grep glibc static glibc static 2 12 1 80 el6 3 5 i686 如何在 BASH 中进行检
  • PHP 与 MySQL 查询性能( if 、 函数 )

    我只看到这个artice http www onextrapixel com 2010 06 23 mysql has functions part 5 php vs mysql performance 我需要知道在这种情况下什么是最好的表
  • 从 Linux 内核模块中调用用户空间函数

    我正在编写一个简单的 Linux 字符设备驱动程序 以通过 I O 端口将数据输出到硬件 我有一个执行浮点运算的函数来计算硬件的正确输出 不幸的是 这意味着我需要将此函数保留在用户空间中 因为 Linux 内核不能很好地处理浮点运算 这是设
  • MySQL 转储未知选项“-no-beep”

    在旧服务器上我使用了mysql转储命令来备份 MySQL 数据库 在新服务器上 MySQL 版本为 5 6 相同的命令给出了错误 unknown option no beep 无论它插入什么 我也在互联网上搜索过 但找不到任何帮助 在 my
  • post php mysql 的拆分关键字

    我有一个表存储帖子 ID 它的标签如下 Post id Tags 1 keyword1 keyword2 keyword3 我想循环遍历该表中的每一行并执行以下操作 将关键字1 关键字2 关键字3放入新表中 word id word val
  • 无法显示 Laravel 欢迎页面

    我的服务器位于 DigitalOcean 云上 我正在使用 Ubuntu 和 Apache Web 服务器 我的家用计算机运行的是 Windows 7 我使用 putty 作为终端 遵循所有指示https laracasts com ser
  • 如何在 MySQL 查询本身中检索 JSON 数组中存储的值?

    我有下表 product id product name image path misc 1 flex http firstpl course level id 19 group id 40067 2 Android http firstp
  • pip install MySQL-python 在 ubuntu 14.04 上失败,错误:命令“x86_64-linux-gnu-gcc”失败,退出状态为 1

    我已经阅读了所有要安装的软件包列表的堆栈溢出 谷歌建议 但似乎都没有解决这个问题 将 ubuntu 14 04 Web 服务器从美国托管提供商迁移到欧洲的 DigitalOcean 两者都配置了相同的 Ansible playbook 但美
  • 使用外键将表拆分为两个表

    我有一张桌子 drupal comments 其中包括以下列 cid primary key uid foreign key to users table optional name varchar optional email varch
  • 如何在文件中搜索多行模式?

    我需要找到包含特定字符串模式的所有文件 我想到的第一个解决方案是使用find管道与xargs grep find iname py xargs grep e YOUR PATTERN 但是 如果我需要查找跨越多行的模式 我就会陷入困境 因为
  • 在 MySQL 中将值设置为 NULL

    我想要一个值被设置为NULL如果我提交的表单中的文本框中没有输入任何内容 我怎样才能做到这一点 我试过插入 NULL 但这只是添加了这个词NULL进入现场 我不确定我应该为此提供什么代码 我只是编写一个 UPDATE 查询 不要放NULL更
  • 如何使用 Connector/C++ 更新 MySQL 中的一行值

    我有一个简单的数据库 想要更新一个 int 值 我最初执行一个查询并返回一个 ResultSet sql ResultSet 对于结果集中的每个条目 我想修改表的一个特定列中的值 然后将其写回到数据库 更新该行中的该条目 根据文档 我不清楚
  • 使用 order by 和 limit 从多个表中删除

    我试图从使用 ORDER BY DESC 和 LIMIT 有关系的两个表中删除 DELETE FROM my rel table AS t1 LEFT JOIN my photo table AS t2 ON t2 typeid t1 ty
  • 从另一个 python 脚本获取返回信息

    我在 Linux 上 我有一个 python 脚本 我想从另一个 python 脚本调用它 我不想将其作为模块导入 为了一层安全性 现在为了学术练习 因为我想弄清楚这一点 我实际上想让一个脚本使用 os system 或另一个类似的函数 并
  • MySQL - 连接 a 或 b

    假设我有一个TABLE a其中一个COLUMN data是一个join其他 2 张桌子 TABLE b and TABLE c 因为我想得到一个COLUMN info in b or c 事情是a data将匹配only with b da
  • 在 C 中运行 setuid 程序的正确方法

    我有一个权限为4750的进程 我的Linux系统中存在两个用户 root 用户和 appz 用户 该进程继承以 appz 用户身份运行的进程管理器的权限 我有两个基本惯例 void do root void int status statu
  • 将redis数据移至MySQL的更快方法

    我们拥有庞大的购物和产品交易系统 我们在 MySQL 方面遇到了很多问题 因此经过几次研发后 我们计划使用 Redis 并开始将 Redis 集成到我们的系统中 继之前直接访问数据库之后 现在我们已经移动了Redis系统 用户购物车详情 关

随机推荐

  • 告诉 CMake 对来自 CMake 的 C 文件使用 C++ 编译器?

    这类似于通过 Visual Studio 强制 CMake 使用 C 编译器来处理 C 文件 https stackoverflow com q 10138311 但并不完全相同 它不一样 因为它的 CMake 文件导致了失败 我正在研究几
  • WPF 可执行文件无法在 Visual Studio 之外运行(资源字典问题)

    我有一个 WPF 应用程序 如果我在 Visual Studio 中 调试 F5 调试和发布模式均有效 该应用程序可以完美运行 但如果我尝试双击 bin Release 文件夹中的 exe Windows 会终止该应用程序立即地 问题似乎是
  • Internet Explorer 8 开发人员工具不显示

    最近一天 在 Internet Explorer 8 中 开发人员工具窗口将不会显示 当我按 F12 或使用菜单 工具 gt 开发人员工具 时 我在任务栏中看到 开发人员工具 条目 但实际窗口不会显示 已经运行了一个月左右 一切正常 我尝试
  • 当手机中的应用程序进入后台时,Apple Watch 和 iPhone 未连接

    我在模拟器中运行了我的 iPhone 应用程序及其手表扩展 我从手机向手表发送消息 反之亦然 消息发送和接收没有任何问题 但是 当我将 iPhone 应用程序发送到后台 然后从手表向 iPhone 发送消息时 我不断收到以下日志 WC 33
  • 如何在 apollo graphql 服务器中创建嵌套解析器

    给定以下 apollo 服务器 graphql 架构 我想将它们分解为单独的模块 因此我不希望在根查询模式下进行作者查询 并希望将其分开 所以我在将其添加到根查询之前添加了另一个名为authorQueries的层 type Author i
  • 为什么屏幕截图不起作用(黑屏)?

    服务是 允许服务与桌面交互 unit Unit1 interface uses Windows Messages SysUtils Classes Graphics Controls SvcMgr Dialogs type TCopyDes
  • wget 转义特殊字符

    我正在尝试使用 wget 下载该网页的内容 https bibliotheque numerique paris fr search aspx SC DEFAULT Search query ForceSearch f Page 0 Pag
  • 生成复合饼图或饼图饼图

    下面是一个复合饼图的示例 也称为使用 Excel 绘制的饼图 是否可以使用 python 创建这样的图形 是的 这可以通过 matplotlib 实现 下面是改编自的示例here https matplotlib org 3 1 1 gal
  • Sparkfun Edge 引导加载程序问题

    今天终于到了 Sparkfun 板边板 遵循这个写得很好的指南 https codelabs developers google com codelabs sparkfun tensorflow 3 https codelabs devel
  • Sitecore索引重建实践

    在我们的 Sitecore 项目 6 6 0 rev 130404 中 我们拥有超过 200 万个 Sitecore 项目 我们配置了多个 Lucene 索引 每个索引对应这些项目的子集 我们面临的问题是重新构建这些索引所需的时间 特别是对
  • 将图像保存到文件目录

    我正在尝试使用文件目录保存图像 但我无法在没有错误的情况下保存图像 没有这样的文件夹 这是我的代码 我不确定我哪里出错了 Write image to directory func writeImageToPath path String
  • 当没有根标签时使用 lxml 解析 html

    我一直在使用lxml 和formalchemy 为sqlalchemy 构建一个脚手架库 但我很难让它们很好地发挥作用 具体来说 formalchemy FieldSet render 返回没有根标签的 html 片段 我似乎无法弄清楚如何
  • 在Python中生成随机文件名的最佳方法

    在Python中 生成一些随机文本以添加到我保存到服务器的文件 名称 之前的好方法或最佳方法是什么 只是为了确保它不会被覆盖 谢谢你 你可以使用UUID模块 http docs python org library uuid html用于生
  • VSTS - 持续交付 - 发布触发器不适用于标签

    更新2017 02 28 发布触发器中的标签不是源代码控制标签 它们是可以由构建步骤生成的标签 您可以自动标记您的构建 见下文 或在构建过程中手动标记 我还没有尝试过 我对标签的假设是flawed 这使得这个问题几乎无效 不过 我将尝试看看
  • 有没有办法在 Chrome DevTools 中更改时区?

    我用 JavaScript 创建了一个工具 用于确定当前 UTC 时间并检查另一个预定日期是否已经过去 我想将浏览器更改为另一个时区 看看测试是否仍然通过 但我无法找到执行此操作的方法 有没有办法在 Chrome DevTools 中做到这
  • SQL 强制显示十进制值

    我正在使用 Firebird 数据库并尝试以下 sql 但每次它返回 0 而不是 0 61538 等 SELECT COUNT myfield 26 totalcount FROM mytable 现在 当我删除 26 时 总计数将返回 1
  • 有没有办法增加代码本身的Java堆空间? [复制]

    这个问题在这里已经有答案了 可能的重复 是否可以动态更改最大 java 堆大小 https stackoverflow com questions 1091566 is it possible to dynamically change m
  • 在 R 传单中标记鼠标单击事件以获得闪亮效果

    如何在 R 中的传单地图中的标记上接收鼠标单击事件 我正在使用 RStudio 传单并运行 Shiny 我想获取标记的值 例如 ID 并使用它来更新侧边栏面板 你想使用input MAPID marker click 请参阅下面的示例 li
  • C# 中的类型初始化异常

    我将根据教程创建一个学生信息系统 一旦用户想要将新学生添加到数据库中 就会发生以下异常 我尝试了解一些有关 TypeInitializationException 的知识 并且我通过它的名称了解了一些 但我无法完全理解它 此外 我正在遵循的
  • MySQL 备份:我可以将单个 MyISAM 表文件复制到另一台具有不同 MySQL 版本和不同操作系统的服务器吗?

    我的意思是复制单个 MyISAM 表文件是 关闭 mysqld 并将 frm myd 和 myi 文件从一个数据库文件夹复制到另一个数据库文件夹 问题 a 我可以使用这种方式将MySQL数据库文件夹从一台服务器备份到另一台具有不同MySQL