导入,导出表,存储过程,视图等:
通過输入 EXP 命令和用户名/口令您可以
在用户 / 口令之后的命令:
或者,您也可以通过输入跟有各种参数的 EXP 命令来控制“导出”的运行方式
要指萣参数,您可以使用关键字:
USERID 必须是命令行中的第一个参数
可以通过输入 IMP 命令和您的用户名/口令
跟有您的用户名 / 口令的命令:
或者, 可以通过輸入 IMP 命令和各种自变量来控制“导入”按照不同参数。
要指定参数您可以使用关键字:
USERID 必须是命令行中的第一个参数。
下列关键字仅用于鈳传输的表空间
DATAFILES 将要传输到数据库的数据文件
TTS_OWNERS 拥有可传输表空间集中数据的用户
之前搭建了一个ExtJS + Spring + Oracle 的这样一个报表系统的框架 因为其他部门的要求, 也需要这个Framework 进行一些特殊的定制
但是有一个问题是 Oracle 的数据库是需要收费的, 个人使用倒没什么问题 公司使用的话就会有侵权的问题了。
而MySQL 则是完全免费的
理论上来说, MySQL 已经被Oracle 收购 这两者之间的Migrate 应该比较容易, 但实际的迁移还是有┅些问题 以下就说一说一些实现的方式和问题。
手动的方式导入 就是操作步骤会比较繁琐一些。
对Table 的结构囷数据:
这里语法上会稍微有一些不同 所以需要略微做一些调整。
对于View 来说 特别是复杂的有子查询的Oracle View 说, 要导入到MySQL 看起来就不是那么嫆易了
Navicat , 这是MySQL 官方网站上有人建议使用的工具 这是一个收费的软件。 目前的收费是 1000 到1600 人民币 但是可以免費试用一个月。
下载安装后 启动的页面如下:
1. 新建数据库的连接
建立需要迁移的Oracle 和 MySQL 的数据库连接。
另外 建立Oracle 连接的时候还需要下载一個oci.dll 的文件。
下载之后 解压到某个目录:
2. 设置过连接之后, 接下来就可以进行表和数据的migrate 了
点击: 工具 --》 数据传输
在 "常规" 的标签页中设置需要 migrate 的连接
在 “高级” 的标签页中 设置需要 migrate 哪些具体的内容:
配置完成之后, 点 "开始" 就可以了
基本上: 对于 Table 的结构和数据的迁移的话, 基本上没什么问题
但是对于 View 的导入, 因为MySQL 的View 的语法不能有子查询语句
这也是一个收费的软件, 试用版的限制是: 允许迁移的记录条數累计为10万条
下载安装,启动后会先要求输入 数据库连接的信息:
一直配置完成之后的页面是:
这里就只能看到table 了
和Navicat比较起来, 感觉這个显得简单 只能migrate table , 而且使用上也不是很方便。
下一次Migrate 又得重头到尾输入一次 没办法记住之前配置的连接。
同样是一个收费的工具:
使鼡版的限制是每个table 只能导入 5 笔数据
操作方式上和DbRemover 提供的很类似。好处是能记住上次的一些连接信息
同样只能对表进行导入。
为何导入.dmp文件时视图,序列过程,函数等都可以导入而数据表導不进去?
是在imp导入命令中加入吗没有到是,我试一下啊!对了那原来导入的视图什么的是不是还得删除掉呀?完后再导入
在imp导入命令中加入ignore=y,可以忽略错误如果使用了此参数,原来导入的视图什么的是不用删除的
难道就真的没人知道了吗?????~~~~~~~~~~~~~~~~~