序文
実験
ここで少し実験を行うには:
Oracle 11gの環境:
(1)表スペースを作成します
TABLESPACEテストDATAFILEをCREATE
'/u01/app/oracle/oradata/bond/test01.dbf' SIZE 5242880
AUTOEXTEND ON NEXT 1310720 MAXSIZE 32767M
ONLINE PERMANENT BLOCKSIZE 8192をログに記録します
エクステント管理LOCAL AUTOALLOCATEのDEFAULT
NOCOMPRESSセグメント領域管理をAUTO。
(2)利用者と許可を作成します
「テスト」のデフォルトの表領域のテストで識別されるユーザーテストを作成します。
テストへの接続、リソースを付与します。
(3)オブジェクトを作成し、データを挿入します
[オラクル@ボンド〜] $のSQLPLUSテスト/テスト
SQL * Plusを:2019年13時56分26秒日8月18日に11.2.0.4.0の生産をリリース
著作権(C)1982、2013、Oracleの。全著作権所有。
に接続されています:
Oracle Database 11gのEnterprise Editionのリリース11.2.0.4.0 - 64ビットの生産
パーティショニングでは、Oracle Label Securityの、OLAP、データマイニング、
Oracle Database VaultのとReal Application Testingのオプション
SQLは>としてテーブルt_dictを作成します
2ここでROWNUM <= 100辞書SELECT * FROM。
表が作成されました。
データの成功を挿入!
オラクル12cと環境
(1)表スペースを作成します
TABLESPACEテストDATAFILEをCREATE
'/u01/app/oracle/oradata/bond/test01.dbf' SIZE 5242880
AUTOEXTEND ON NEXT 1310720 MAXSIZE 32767M
ONLINE PERMANENT BLOCKSIZE 8192をログに記録します
エクステント管理LOCAL AUTOALLOCATEのDEFAULT
NOCOMPRESSセグメント領域管理をAUTO。
(2)利用者と許可を作成します
「テスト」のデフォルトの表領域のテストで識別されるユーザーテストを作成します。
テストへの接続、リソースを付与します。
(3)建設及び挿入データオブジェクト
[オラクル@ボンド〜] $のSQLPLUSテスト/テスト
SQL * Plusを:金9月6日午後七時53分16秒2019で12.2.0.1.0生産をリリース
著作権(C)1982、2016、Oracleの。全著作権所有。
に接続されています:
Oracleデータベース12cのEnterprise Editionのリリース12.2.0.1.0 - 64ビットの生産
SQLは>としてテーブルt_dictを作成します
2ここでROWNUM <= 100辞書SELECT * FROM。
辞書から選択*どこROWNUMの<= 100
*
2行目でエラー:
ORA-01950:表領域 'TEST' に関する権限なし
失敗したデータを挿入します。
原因分析
ユーザーがデフォルトの11グラムUNLIMITED TABLESPACE権限によってユーザーに付与され、及び12cと許可がデフォルトで許可されていない接続して、リソース権限付与されたときにユーザー権限とロール権限のコントラスト11gと12cは、見ることができます。
この現象はR2を11gのされたクエリの公式サイトには、バグのように見える、と12cを修正このバグ。次のように公式サイトでは説明しました:
UNLIMITED TABLESPACEシステム権限は、将来のOracle Databaseリリース(参考バグ7614645)でRESOURCEロールから削除されます。
考えます
12cはのように簡単な補助金のユーザーが接続されていないおよび11gのようなリソース権限を使用することができますので、その後、どのようにユーザーを作成し、それに権限を割り当てるには?
次の例では、通常のユーザーを作成します。
TABLESPACEテストDATAFILEをCREATE
'/u01/app/oracle/oradata/bond/test01.dbf' SIZE 5242880
AUTOEXTEND ON NEXT 1310720 MAXSIZE 32767M
ONLINE PERMANENT BLOCKSIZE 8192をログに記録します
エクステント管理LOCAL AUTOALLOCATEのDEFAULT
NOCOMPRESSセグメント領域管理をAUTO。
TEMPORARY TABLESPACEのtest_tempのTEMPFILEをCREATE
'/u01/app/oracle/oradata/bond/test_temp01.dbf' SIZE 33554432
AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M
エクステント管理LOCAL UNIFORMのSIZE 1048576;
「テスト」で識別されるユーザーテストを作成
デフォルトの表領域のテスト
テストのクォータ30G
一時表領域test_temp。