复制mysql数据表文件MYI,MYD,frm 后问题记录

1 错误提示“ERROR 1036 (HY000): Table is read only“,可读不可写。

解决方法:
1 检查复制后的数据文件 所属 用户和用户组 是否为mysql:mysql
2 检查新表数据文件是否缺少 w (写)权限
3 进入mysql 和db 后。执行 flush 命令刷新 ;

2 错误提示“Got error 175 from storage engine“

解决方法: 修复表,产生原因可能时复制过程中的表损伤
>REPAIR TABLE tablename
时间: 2024-11-06 03:44:44

复制mysql数据表文件MYI,MYD,frm 后问题记录的相关文章

随机获取Mysql数据表的一条或多条记录

随机获得Mysql数据表的一条或多条记录有很多方法,下面我就以users(userId,userName,password......)表(有一百多万条记录)为例,对比讲解下几个方法效率问题: select * from users order by rand() LIMIT 1 执行该sql语句,老半天没有反应,最后被迫手动停止执行,怎个伤人了得啊!后来我查了一下MYSQL手册,里面针对RAND()的提示大概意思就是,在 ORDER BY从句里面不能使用RAND()函数,因为这样会导致数据列被

如何通过直接复制frm文件以实现恢复/复制innodb数据表?

如何通过直接复制frm文件以实现恢复/复制innodb数据表?在MySQL5.0的使用过程中,经常会出现一些莫名奇妙的问题,导致服务无法启动,只好重新安装MySQL,但是这样原来的数据库就会丢失了.听说MySQL的数据库文件直接复制便可以使用,但是根据查询,那是指原来的一种"MyISAM"类型的表.我通常都是使用MySQL-Front直接创建表,默认是"InnoDB"类型,这种类型的一个表在磁盘上好像只对应一个"*.frm"文件,不像MyISAM

php上传xls文件导入到mysql数据表

申明下面的文章属于转载,现在大家新下载的版本跟下面列子这个不一样!我看了很多网上的列子,最后我还是读了那个英文的手册,上面说的很清楚!大家英语不好可以下载有道!其实重点是要包含下面两行: require_once 'excellib/PHPExcel.php'; require_once 'excellib/PHPExcel/IOFactory.php'; 你们各自的替换各自存放目录,我这里用的是excellib目录.就是要把PHPExcel.php',PHPExcel/IOFactory.ph

MySQL数据表碎片整理

在MySQL中,我们经常会使用VARCHAR.TEXT.BLOB等可变长度的文本数据类型.不过,当我们使用这些数据类型之后,我们就不得不做一些额外的工作--MySQL数据表碎片整理. 那么,为什么在使用这些数据类型之后,我们就要对MySQL定期进行碎片整理呢? 现在,我们先来看一个具体的例子.在这里,我们使用如下SQL语句在MySQL自带的TEST数据库中创建名为DEMO的数据表并插入5条测试数据. --创建DEMO表  id int unsigned,  body text  ) engine

用Myisamchk让MySQL数据表更健康

用Myisamchk让MySQL数据表更健康 2011-03-15 09:15 水太深 ITPUB 字号:T | T 为了让MySQL数据库中的数据表“更健康”,就需要对其进行定期体检.在这里笔者推荐使用Myisamchk工具来对数据表进行不定期的检查.同时笔者给出了一些相关的注意事项以及使用技巧. AD:51CTO 网+首届APP创新评选大赛火热启动——超百万资源等你拿! 在MySQL数据库中,数据表数以百计,数据库管理员不可能有这么多的时间和精力去依次检查表的有效性,所以他们急需要一种工具,

MySQL 数据表修复及数据恢复

1. MYSQL数据表在什么情况下容易损坏? 服务器突然断电导致数据文件损坏. 强制关机,没有先关闭mysql 服务等. 2. 数据表损坏后的主要现象是什么? 从表中选择数据之时,得到如下错误:Incorrect key file for table: ‘…’. Try to repair it 查询不能在表中找到行或返回不完全的数据. Error: Table ‘p’ is marked as crashed and should be repaired . 打开表失败: Can’t open

navicat如何导出mysql数据表结构

我们在创建数据库时会对字段进行设置,比如类型.长度等,如果字段多的话一个个设置非常麻烦,可以从其他地方已有的表导入数据表结构,怎么操作呢?我们拿navicat导出mysql数据表结构为例: 1.点击“工具”–>数据传输. 2.在弹出的窗口里左边可以选择需要导出的表,右边选择连接或文件(我要导出sql文件,所以我选的是文件)选择导出的位置. 3.如果只是想导出表结构而不需要表的数据,那么点击“高级”–>把“插入记录”前的勾去掉.如果需要导出数据,那么默认打勾就可以, 4.点击开始,直到进度条走到

Django注册使用已有的mysql数据表

在之前的时候如果想要注册mysql数据表的话需要在models.py文件中写好表结构等内容,但这种情况只适合初建新表的时候,那如果需要使用已经在mysql中建好的表并且存有数据的表时该怎么操作呢? 如果mysql数据表中已经存有了数据,就在站点的目录下执行下面的命令将mysql表映射到django的models中 python manage.py inspectdb > models.py 然后将生成models.py文件覆盖掉站点app中的models.py即可 最后同步一下数据库即可 pyt

Linux上检查MySQL数据表的存储引擎类型三板斧

MySQl主要使用两种存储引擎:MyISAM 和 Innodb.MyISAM是非事务的,因此拥有读取更快,然而InnoDB完全支持细颗粒度的事务锁定(比如:commit/rollback).当你创建一张新的MySQL表时,你要选择它的类型(也就是存储引擎).如果没有选择,你就会使用与预设置的默认引擎. 如果你想要知道已经存在的MySQL数据表的类型,这里有几种方法达到. 方法一 如果你可以访问phpMyAdmin,你可以从phpMyAdmin找出默认的数据库类型.从phpMyAdmin中选中数据