Oracle

  (最終更新日:2015.07.7)

(解決策)テーブルを作成しようとしたらORA-01950エラーで権限が無いと怒られたとき

dba権限が無いユーザーでOracleデータベースにテーブルを作成しようとしたところ、『SQLエラー: ORA-01950: 表領域’HOGEDATA’に対する権限がありません』といったエラーが表示されてテーブルが作成できませんでした。

SQLエラー: ORA-01950: 表領域'HOGEDATA'に対する権限がありません
01950. 00000 -  "no privileges on tablespace '%s'"
*Cause:    User does not have privileges to allocate an extent in the
           specified tablespace.
*Action:   Grant the user the appropriate system privileges or grant the user
           space resource on the tablespace.

デフォルト表領域なのになんでや…。

仕方がないので alter user で表領域への無制限の権限を付与します。

alter user TESTUSER quota unlimited on HOGEDATA;

これで完了。無事にテーブルが作成できるようになりました。

どうして権限が無くなったのか

ちなみにどうしてデフォルト表領域なのに権限が無くなったのかな‥と思いよくよく確認してみたところ、どうやらdba権限を剥奪した時に権限が消えてしまったようでした。オーマイガ。

ユーザーを作成した直後は UNLIMITED TABLESPACE 権限が付与されており、表領域への無制限の権限が付与されていました。これはdba権限の有り無し関係なく。
2015-07-07_10h47_16
ところが、ユーザー作成後に REVOKE dba でdba権限を剥奪したところ、権限が消滅‥。
2015-07-07_10h48_16
これにより表領域の利用権限が消えてしまったようです。
ぐぬぬ。

スポンサーリンク
スポンサーリンク

関連記事

  1. Oracle

    【Oracleメモ】テーブルやインデックスの統計情報の収集状況を確認するSQL

    Oracle11g、Oracl12cなどで利用可能。テーブルやイン…

  2. Linux

    LinuxカーネルパラメータSEMMNSとSEMMSLの値を確認する方法

    OracleでPROCESSESパラメータの値を変更する際には、OSカ…

  3. Oracle

    Impdp時にtablesを使うとファンクションやストアドは作成されない

    OracleのDataPumpコマンド『impdp』の利用時に tab…

  4. Oracle

    長時間動いているセッション(SQL)の情報を取得するSQL

    Oracleで長時間稼働している処理(SQL)の情報を取得するSQLが…

  5. Oracle

    Statspackの取り方:テキスト形式のレポートをコマンドで出力する

    Oracleの障害や状況調査で役に立つStatspackレポートをテキ…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

最近の記事

  1. ColdFusion 2018にUpdate 8を適用したら…
  2. 【vsftpdを守る】CentOS 7にfail2banをイ…
  3. nologinを指定したユーザーでFTP接続するとパスワード…
  4. CentOS 7にTomcatをインストールして起動したらエ…
  5. NetApp / cDot : AutoSupport Ma…
PAGE TOP