mysql中的ERROR 1146 (42S02)问题解决方案(主从服务器数据同步引起)
2014-08-14 14:00
756 查看
问题的起因:
有一台mysql服务器,其已经运行了很长时间了,由于后来流量增大,且新的需求中关于统计,分析之类的多了起来。为防止影响该服务器的运行,决定使用主从式配置。统计,分析之类在从服务器上进行。(数据库使用InnoDB引擎)
在从服务器搭建好后,首先手工同步数据。在将对应的数据库目录打包复制到从服务器后,启动从服务器,在用mysql客户端登录后,发现在使用 “select * from 表名” 时出现 ERROR 1146 (42S02)。
解决过程:
一、查mysql文档,发现在使用innoDB引擎的数据库中,其实际数据不是存放在数据库目录下的,而是放在一个叫ibdata1的文件内(默认配置时),其目录下只是放置了数据库的表及表结构相关的信息。复制ibdata1文件至从服务器对应目录后,重启,仍出现该问题
二、仔细检查发现,从服务器中多了个ibdata2的文件。在检查过主从服务器的配置文件my.cnf 后发现,在从服务器的设置中,有innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend 语句,将该语句注释(主服务器中也是注释掉的),停止服务器,并删除ibdata2
文件及相关的其他初始文件,重启后发现该问题仍然存在
三、经过仔细查看mysql文档,可能是由于主服务中的数据缓存而造成的问题(即此时 ibdata1文件可能是不一致的)。经过相应处理后,在从服务器的该问题得到解决。其处理过程如下:(mysql> 表示在 mysql客户端执行。 shell>表示在 linux的shell中执行)
主服务器操作:
1、mysql> flush tables with read lock;
2、 mysql> reset master;
3、 shell> 复制 ibdata1 到指定目录
4、mysql> unlock tables;
从服务器操作
5、shell> 首先停止服务
6、shell> 删除mysql在启动过程中产生的文件及ibdata1及相关文件。
7、shell> 启动服务,并停止。
8、shell> 复制刚才主服务器中的 ibdata1到对应的目录下(overview)
9、 shell> 启动服务。
有一台mysql服务器,其已经运行了很长时间了,由于后来流量增大,且新的需求中关于统计,分析之类的多了起来。为防止影响该服务器的运行,决定使用主从式配置。统计,分析之类在从服务器上进行。(数据库使用InnoDB引擎)
在从服务器搭建好后,首先手工同步数据。在将对应的数据库目录打包复制到从服务器后,启动从服务器,在用mysql客户端登录后,发现在使用 “select * from 表名” 时出现 ERROR 1146 (42S02)。
解决过程:
一、查mysql文档,发现在使用innoDB引擎的数据库中,其实际数据不是存放在数据库目录下的,而是放在一个叫ibdata1的文件内(默认配置时),其目录下只是放置了数据库的表及表结构相关的信息。复制ibdata1文件至从服务器对应目录后,重启,仍出现该问题
二、仔细检查发现,从服务器中多了个ibdata2的文件。在检查过主从服务器的配置文件my.cnf 后发现,在从服务器的设置中,有innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend 语句,将该语句注释(主服务器中也是注释掉的),停止服务器,并删除ibdata2
文件及相关的其他初始文件,重启后发现该问题仍然存在
三、经过仔细查看mysql文档,可能是由于主服务中的数据缓存而造成的问题(即此时 ibdata1文件可能是不一致的)。经过相应处理后,在从服务器的该问题得到解决。其处理过程如下:(mysql> 表示在 mysql客户端执行。 shell>表示在 linux的shell中执行)
主服务器操作:
1、mysql> flush tables with read lock;
2、 mysql> reset master;
3、 shell> 复制 ibdata1 到指定目录
4、mysql> unlock tables;
从服务器操作
5、shell> 首先停止服务
6、shell> 删除mysql在启动过程中产生的文件及ibdata1及相关文件。
7、shell> 启动服务,并停止。
8、shell> 复制刚才主服务器中的 ibdata1到对应的目录下(overview)
9、 shell> 启动服务。
相关文章推荐
- MYSQL主机Master磁盘写满,导致主从数据无法同步各种问题解决
- MYSQL 主从 同步问题解决方案
- [mysql]一次主从数据不一致的问题解决过程
- 解决Mysql主从不同步问题
- Mysql 5.6 主从服务器数据同步
- mysql一些问题的解决方法 ERROR 1045 (28000)|在同一服务器上启动不同端口
- mysql 数据同步 出现Slave_IO_Running:No问题的解决方法小结
- Sql Server 2005 与Sql Server Mobile(Sql server 2005 mobile Edition)数据同步步骤以及问题解决方案
- 减少mysql主从数据同步延迟问题的详解
- mysql 数据同步 出现Slave_IO_Running:No问题的解决方法小结
- mysql主从同步延迟方案解决的学习心得
- mysql 数据同步 出现Slave_IO_Running:No问题的解决方法小结
- MySQL服务器主从同步版本问题
- 使用Percona Toolkit解决Mysql主从不同步问题【备忘】
- [导入]跨服务器导入数据SQL语句及其问题解决方案
- MySQL 减少主从数据同步延迟的几个方案
- 减少mysql主从数据同步延迟问题的详解
- 解决ecshop 数据迁移产生的MySQL server error report:Array 这个问题
- Mysql互为主从问题--日志同步数据不同步