我的意思是复制个人MyISAM表格文件是:
(closuresMysqLd并将.frm,.myd和.myi文件从一个数据库文件夹复制到另一个)
题:
(一)我可以用这种方式备份MysqL数据库文件夹从一个服务器到另一个服务器与不同的MysqL版本?
(二)可以将这个备份文件移动到不同的操作系统? (例如:debian到centos)
MysqL二进制日志位置Windows 2008 Server
设置Emacs Tramp来存储本地备份
块级复制和Rsync
如何使用forfiles(或类似的)删除n天以前的文件,但总是离开最近的n
Server Core 2016上的Azure恢复服务代理
Linux备份服务与冰川支持
rsync和–link-dest的磁盘使用问题
使用VB.net自动执行任务
如何在Windowspath中使用卷标?
– cpu'endian'(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 Jorgenson –
a)只要确保关闭MysqL,将myisam文件移动到相同版本的服务器上就可以了(但对于其他引擎则不是这样)。 一般来说,你甚至可以在不同的次版本之间进行切换(尽管它不能保证)。
b)Debian到CentOS应该可以正常工作。 一般来说,只有潜在的问题,你会跨越操作系统将是不同的文件夹结构(对于大多数Linux发行版不是问题)或具有不同endian – ness(也是一个非常罕见的问题,这些天)的操作系统。
也许。 我会详细说明。
如果它们是相同的小版本,并且具有相同的my.cnf版本,则为YES。
如果您从5.0或更高版本变为5.0或更高版本,并且具有相同的my.cnf,则为YES
如果使用全文索引并且将其参数设置成不同,包括停用词(提示:不要使用全文索引),则为NO。
但在一般情况下,不,我会说如果它运行的是与原来的完全相同的MysqL二进制文件,你只能去另一台机器。 如果您打算做其他事情,请广泛测试。 格式的变化可能是微妙的,似乎工作(例如:排序细节导致索引范围扫描国际化问题)。
my.cnf的内容确实会影响行为,并且可能会使现有表无效,特别是全文索引。
即使转向更新的版本,我也遇到了困难,因为尽管它声称并且似乎工作,但是较旧的MyISAM版本会导致长期不可预知的行为和崩溃(我们正在谈论持续模拟大数据集的几天)。 这意味着对于4.1-5我必须使用REPAIR TABLE来迁移整个数据集。
如果myisam格式的任何差异都会导致不兼容,那么REPAIR TABLE总是修复它们(只要MysqL能读取AT ALL的表格 – 例如5.0到4.1)!
在规划升级时,总是要进行浸泡/压力测试,这可能会暴露MysqL不知道的问题。
当你有相同版本的MysqL服务器时,你可以移动文件并使用MysqL工具进行检查。 我不认为有任何问题与操作系统。 但版本应该是相同的MysqL服务器。
如果版本不同,最好的方法就是使用MysqLdump表,然后使用MysqL导入它们。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。