エクスポートしようとしています。通常はuserid=\"/ as sysdba\"
Linuxコマンドラインのsyntex(実稼働環境ではsysパスワードがわかりません。
プラガブルデータベースを使用してこれを行うにはどうすればよいですか?私はこのようなことを試しました:userid=\"/ as sysdba@mypdb_Oracle_net\"
が機能しません。
expdp userid=\"/ as sysdba@mypdb_Oracle_net\" dumpfile=full_%U.exp logfile=full.log directory=teste full=y parallel=4 version=11.2.0
Export: Release 19.0.0.0.0 - Production on Tue Mar 10 11:18:06 2020
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
UDE-00002: invalid username or password
Username:
まず、PDBからエクスポートするには、SYSを使用しないでください。それは非常に特権的です。 PDBにユーザーを作成し、そのユーザーを使用してデータベースに接続する必要があります。権限「exp_full_database」を使用して、必要な権限を付与できます。
次に、(関連サービスを介して)PDBに直接移動するための接続文字列を指定する必要があります。あなたの例では「mypdb_Oracle_net」です。ただし、その場合は、SYSのパスワードを指定する必要があります。この場合、OS認証を使用できません。
あなたの問題を解決するために、私はこのようなことをします:
SQLPLUS / AS SYSDBA
ALTER SESSION SET CONTAINER=mypdb;
CREATE USER EXPORT_USER IDENTIFIED BY YOUR_PASSWORD;
GRANT CREATE SESSION TO EXPORT_USER;
GRANT exp_full_database TO EXPORT_USER;
EXPDP EXPORT_USER/YOUR_PASSWORD@mypdb_Oracle_net dumpfi......
まず第一に、 \"/ as sysdba@mypdb_Oracle_net\"
動作しないでしょう。 SYSDBA OS認証はリスナーを介して機能しません。
第二に、\"/ as sysdba\"
はバグのため、19cでは(以前のバージョンと比較して)欠陥があります。
バグ28707931-OS認証プロンプトでIMPDPを実行するとパスワードが要求される(Doc ID 28707931.8)
基本的に、Data Pumpは上記を使用してパスワードを要求します。ここでは、何でも入力でき、続行します。バグは20.1で修正されています。または、有効なサポート契約を結んでいるバージョンの個別パッチをダウンロードできます。
ユーザーを作成し、その名前とパスワードを使用するだけです。