Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103551030
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Mysql/postgreSQL

2008-05-27 08:19:13

作者: Jovale  出自:
单位的数据库是oracle9i和oracle8的,想迁移到mysql的我的当地库上,便于我的学习和使用。

当然,本人在oracle和mysql上都是25,所以只能不停的在baidu搜索,学习。

1、首先就是搜索什么样的关键词能找到我的答案,一开始使用些oralce转mysql,迁移,复制,导出、备份等字眼。顺便了解了一下oracle如何导出,mysql如何导出导入。并且找到了intelligent oracle to mysql软件。导出很傻瓜化,但是字符集有问题。导出的数据在mysql中是乱码。

2、解决字符集,通过baidu知道了oracle的server\client\dump字符集应该一致,是gbk。而自己的mysql默认大部分是latin1,所以不成,但即使我最后把mysql的字符集都换成了gbk,仍然出现乱码。

发现解决的办法。用intelligent oracle to mysql直接将orale转成mysql dump的.sql文件,在windows下可以识别。然后用mysql的source aaa.sql导入到数据库,不显示乱码的问题解决了。

分析可能是oracle展成.sql时,windows的介入,使得字符集的转换隐蔽化了。

3、复制data的下的数据库目录,到新的机器上,提示没有找到表,尽管可以show出tables;努力尝试的两次,带数据和不带数据都没有成功。但复制过来的mysql库却可以直接使用。

如果是MyISAM类型的表应该是没有问题的。但如果是InnoDB类型的表就有问题,因为这种类型的表是不可以直接复制的,表中的数据与具体的事务相关。show tables只会判断数据目录中是否存在该文件,存在就会将该文件的名称作为表明显示出来,但不检查物理数据是否可用。

还没有经过验证,但我想会解决的。

4、原来的jsp与oracle的连接,我的目的是改成jsp与mysql的,家里的直接用com.jdbc.mysql.Driver就可以了,什么mm.Driver用不了。单位mysql5.0的两个驱动都提示找不到,baidu认为是没有找到驱动包,接着从mysql上下载了对应的connector,放到了webinf/lib,成功了。

5,jsp与mysql的连接仍然使用的是webinf/classes下的db.properties,改一下就成了,不过连接名不能改,有的javabean里已经固定使用sqlserver这个名字了。sqlserver=jdbc:mysql://localhost:3306/test。
阅读(1139) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~