自学java
和java一起起飞!
posts - 13,  comments - 19,  trackbacks - 0
由于实验原因,要把原来机子上的mysql数据库移植到另一台机子上.虽然mysql提供了mysqldump命令来进行数据库的换出,但是由于实验数据集较大,采用这种命令速度比较慢,所以我就尝试了直接进行拷贝的方法.这种方法以前在进行不同操作系统之间的移植时是可取的,但是这次的结果却是在另一台机子上,表面上看来数据库是移动过去了,但是数据库中的表却全是空的,这是为什么呢?我在进行移动的过程中,也是把以前mysql中data文件夹下的数据库文件全部拷贝到另一台机子下mysql安装目录的data文件夹下的,为什么表是空的呢?后来把新拷贝过来的数据库与该台机子上正确的数据库文件进行对比,发现少了.myd和.myi文件,而仅仅有.frm文件.所以我认为出错的原因就在于此.于是找出了问题的原因所在.由于我的mysql建表默认引擎为innodb类型,而只有为myisam类型的时候数据库表中才会自动生成myd和myi文件.于是,通过一下步骤先进行判断表的引擎,然后再进行修改就ok了.首先进入mysql数据库,在这里我用的是mysql命令,所以,具体步骤如下:
1:mysql>use epinion(epinion为要移动数据库名,weight为该数据库中的表名)
2:mysql>show tables;
3:mysql>show table status like 'weight';如果现实的type=innodb的话,接下来就可以通过修改表来改变表的引擎了
4:mysql>alter table weight type='myisam';这样我们就可以看到mysql安装目录data文件夹下的epinion文件中就有了myd和myi文件了,同时,该文件的空间也由于新添了这两个文件而会有很大的提高.
然后把epinion数据库文件夹重新拷贝到另一台机子的mysql安装目录的data文件夹下,重新运行mysql就可以了.

posted on 2009-07-13 11:01 JavaLearner 阅读(2636) 评论(5)  编辑  收藏 所属分类: 编程

FeedBack:
# re: mysql数据库从一台机子移动到另一台[未登录]
2012-07-15 11:09 | king
多年难题解决了,哈哈,“拜你所赐呀”--开个玩笑!!  回复  更多评论
  
# re: mysql数据库从一台机子移动到另一台
2013-04-07 00:27 | 新月
赞赞,描述的同时是我的问题,终于知道原因在哪了。  回复  更多评论
  
# re: mysql数据库从一台机子移动到另一台
2013-04-07 00:54 | 新月
4:mysql>alter table weight type='myisam';
修正一下,这里type应该是engine才对吧
4:mysql>alter table weight engine='myisam';  回复  更多评论
  
# re: mysql数据库从一台机子移动到另一台
2013-09-26 11:17 | www.viinew.com
赞一个,我就想要这个  回复  更多评论
  
# re: mysql数据库从一台机子移动到另一台
2015-02-13 15:50 | fsfs
return nesfsfsw ModelAndView("")  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
 

<2009年7月>
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

常用链接

留言簿(1)

随笔分类

随笔档案

文章档案

最新随笔

搜索

  •  

积分与排名

  • 积分 - 21688
  • 排名 - 1637

最新评论

阅读排行榜

评论排行榜