私はコンピュータ上でOracle 10を手に入れました。そこにデータベースセンターがあります。 BコンピュータにはOracle 11.2.0がインストールされており、データベースはありません。 コンピュータ上のデータベースの名前はcenttです。stt、wnn、tnnなどのユーザーもいます。 すべてのユーザーを含むコンピュータからデータベース全体をファイルにエクスポートしたいとします(allDBdump.datなど) 。 次に、このデータベース(ファイルallDBdump.dat)をBコンピュータにインポートします。 私は、コンピュータ上で以下のようにexportコマンドを使用していますOracle 10からデータベース全体をエクスポートし、すべてのユーザーとOracle 11.2.0にインポートするにはどうすればよいですか?
exp userid=sys/sys file='c:\allDBdump.dat' log='c:\allDBdump.log' FULL=Y
今、私はすべてのユーザーとコンピュータにデータベース全体をインポートしたいと思います。 私は、インポートの前に "データベース設定アシスタント"によってコンピュータ上にデータベースを作成する必要があることを知っています。 は、それから私は、コマンドによって、SQLツール内のすべてのユーザーを作成する必要があります。
CREATE USER st IDENTIFIED BY st;
GRANT ALL PRIVILEGES TO st WITH ADMIN OPTION;
GRANT IMP_FULL_DATABASE TO st WITH ADMIN OPTION;
は、その後、私は、インポート・データベースへのコマンドを使用します。
imp 'sys/[email protected]:1521/centt as sysdba' FULL=Y file=allDBdump.dat fromuser=st touser=st
このソリューションは良いですが、私は、インポートする前に、すべてのユーザーを知っている必要があります。 質問は、コンピュータ上のすべてのユーザーを作成せずにallDBdump.datをインポートする方法です。 次のようなもの:
imp 'sys/[email protected]:1521/centt as sysdba' FULL=Y file=allDBdump.dat IMPORT_ENTIRE_DATABASE_WITH_ALL_USERS_ON_A_COMPUTER
ありがとうございました。
自分に好意を行い、代わりにEXP/IMPのあるexpdp/impdpは使用しています。 exp/impが新しいバージョンのOracle(コンテキストなど)で正しく処理できないことがいくつかあります。 –