質問: oracle9iでのサーバー移行時のpublicユーザーの移行方法について 移行元はoracle8iかoracle9i 移行先はoracle9iで、 exp と imp でデータの移行を行いたいのですが、 ●expの例 exp tbl/tbl@server file=e:\exp_user.dmp,full= y,log=e:\exp_user.log ●impの例(aaaユーザーをインポートする) imp tbl/tbl file=e:\exp_user.dmp log=e:\exp_user_com.log fromuser=aaa touser=aaa rows=yes しかしdatabase linkとsynonymはpublicユーザーで、 imp文のaaaをpublicにしてもインポートされません。 ・public database link データベースリンク ・public synonym publicユーザーの移行にはどのしたらいいのでしょうか?
回答: ユーザモードでインポートすれば、publicな定義は当然インポートできません。 fullモードでインポートするか、別途定義ddlを実行すればよいと思いますよ。 定義ddlがないのであれば、 imp tbl/tbl file=e:\exp_user.dmp rows=n show=y で、エクスポートファイル中の定義内容が画面表示されるので、該当箇所を拾えば良いかと。