到目前为止,我从来没有对Oracle数据库做过任何严肃的事情。我知道它们与我所处理的不同,比如MS SQL。如何从Oracle 11g XE导出“数据库”并将其导入到Oracle 10.2?
因此,从MS SQL的角度来看,我可以备份数据库,将.bak文件复制到另一台服务器,还原它,创建数据库的完整副本。
我不知道如何为Oracle做同样的事情,更不用说不同的版本。我已经看到了它与命令行大多完成的,所以我想这:
$exp owner/owner schemas=tkcsdb directory=dumpdir dumpfile=dBaseName logfile=dBaseLog
然后是SQL Plus中的回报:
未知参数名称“架构” 无法处理参数 出口终止不成功
我已经用'schema'(同样的错误)替换了'schemas',并且我想尝试使用'tables',尽管我不知道结果如何。我甚至不是100%,如果'tkcsdb'是数据库的名称我在找 - 我一直无法列出所有数据库我有。我想要做的事情(我已经用MS SQL,MySQL甚至是IBM DB2做的所有事情)正在Oracle中很难复制。
与标题一样,如何从Oracle 11g XE导出“数据库”并将其导入到Oracle 10.2?
我使用的是Windows 7,目标机器是某种Linux Fedora。
我与“tkcsdb”为模式试了一下,确信这是“数据库”的名称。它没有工作。看你的例子,你也把'斯科特'放在里面。所以我加入了'tkcsowner'。你叫什么scott/tkcsowner,以及如何将它们与MS SQL中的术语进行比较?无论如何,这是做到了。谢谢。但它确实返回了一个错误:“密码将在7天后过期。”这是我应该关心的吗?另外,由于没有目录,数据库将在何处转储.dmp文件? –
Scott或tkcsowner是数据库“用户”。每个数据库用户都有自己的“模式”,这个用户的对象“活着”(术语用户和模式在Oracle术语中或多或少是同义词)。你确实应该关心密码过期错误 - 只需要改变密码(你也可以改变与这个用户关联的配置文件,这样密码永不过期)。数据库将把转储文件放到数据池目录中(除非你指定了一个带目录参数的文件,但对于初学者,我建议坚持默认的数据泵目录)。 –
tkcsowner/tkcsowner @ db11g。我忘了添加db11g。奇怪的是,它继续备份很好。但是,当我使用db11g再次执行该操作时,它将返回一个错误:无法解析指定的连接标识符。 –