
databaseを新規に作成したいのですが
今使用しているDB(Oracle 10g Express Edition )は
インストール時にデフォルトでデータベースを
作成してしまうため、
「create databese」のsql文を実行すると以下のエラーが出てしまいます。
すでにマウントってどういうことなのでしょうか。
ORA-01501: CREATE DATABASE文でエラーが発生しました。
ORA-01100: データベースはすでにマウントされています。
今存在するDB名が分かれば「drop」コマンドで
削除を試みようと思っているのですが
DB名を参照する方法もよく分かりません。
どなたかご教授お願いします。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
10g Expressは使ったことが無いのであくまで
EnterpriseやStandard Editionと基本的に同じうごきという仮定で書かせてもらいます。
>今存在するDB名が分かれば「drop」コマンドで
>削除を試みようと思っているのですが
>DB名を参照する方法もよく分かりません。
データベース名は
SYSTEMユーザなどでSQL*plusで繋いでいるのであれば
select value from v$parameter
where name ='db_name';
とすれば表示されるかと思います。
>すでにマウントってどういうことなのでしょうか。
という質問に対してですが
Oracleのデータベースには
クローズ(停止)
ノーマウント
マウント
オープン
という4つの状態があり、
おそらく10g Expressではインストール時に
データベースまで自動的に作成してしまって
オープン状態にまでなっているものと考えられます。
ですのでcreate database文内で(おそらく)
startup nomount(クローズ状態からノーマウント状態に変更する命令)
などが実行されると
「すでにマウントされています」
と表示されるのだと思います。
drop database {database_name};
でも良いですが、shutdown immediate;
として、データベースをオープン状態からクローズ
状態にまでしてあげてからデータベースの
ファイルを全て削除する方法でも良いかと思います。
(9iまではdrop database文が無かったのでこの方法
が本来のやり方でした)
No.3
- 回答日時:
#1です。
実際にダウンロードしてちょっと調べてみたところ、10g Expressは
・1インスタンス
・4GB(管理モードで見てみると物理的な制限は5GBとなっているが・・・・?)までのディスク
・1GBまでのメモリ
となっているね。なので、TABLESPACEを作るのは速度とメンテナンス以外の目的では使えなさそう。
以上から、create databaseは使えない(使えても意味が無い)と考えられまふ。
結局表領域「USERS」と一時表領域「TEMP」を使う事になるので、それらを使うように一般ユーザを作って、適当にテーブルを作っていきましょう。
DBに繋ぐ、DBをつつく、などの操作は従来のOracleと全く変わりは無いね(当たり前だが)。9iのEnterprise Manager Consoleでも繋がるし、ADO.NetのOracleProviderもばっちりでした。
No.2
- 回答日時:
お使いのバージョン/エディション用のドキュメントを読んでください。
管理ガイド等に、データベースの作成手順が書かれているハズです。
多分、CREATE DATABASEだけでなく、その後の作業も躓くでしょうから、
管理者ガイドを一度は読んでおく必要があると思いますよ。
No.1
- 回答日時:
10g Expressの事はよく分からないが、Oracleには旧来よりcreate database文は無いよ。
正確には存在するけど、人間が直でこのsql文を叩く事があまり無い。イメージとしては、Oracleは1「database」=1インスタンスだ。
もし、SQL Serverのイメージでやろうとしているのであれば、create TableSpaceを使うと良いだろう。
SQL Serverでは「database」というのは、1ファイルまたは1つのファイルセットの事だよね。Oracleでは1つの物理ファイルに当たるのはTableSpaceだ。
多分私が何を言っているのかさっぱりわからないと思う。とにかく、Oracleの基本概念が今ひとつ理解できていないように見受けられる。SQL Server、PostgreSQL、MySQLとは(概念から)全く違う方法で管理しているので、簡単なチュートリアルからやってみるとどうだろう。
キーワード:
Oracle、ホーム、インスタンス、スキーマ、テーブルスペース
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PL/SQLで@ファイル名が反応しま...
-
SQL*Loaderでのデータロード
-
複数行をINSERTで『ORA-00911: ...
-
【初心者です】SQLPLUSでのバッ...
-
PL/SQLをWindowsのBATファイル...
-
データベースファイル(.db)を開...
-
同じSQL文で極端に検索が遅くな...
-
sql*loader 数値のロード
-
SQLServerのselect文でデータ数...
-
権限に関して
-
mySQLのデータベースにhtmlのコ...
-
ACCESSからリンクでのレコード...
-
レンタルサーバーでトリガーを...
-
メンテナンスプランについて
-
html上でMySQLにアクセス(Java...
-
あるDBから別のDBのテーブルをs...
-
漢字や平仮名の文字をSQLで実行...
-
mysqlにおけるホストのパーセン...
-
SQLiteとファイルキャッシュで...
-
複数のデータベースを使う場合
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PL/SQLで@ファイル名が反応しま...
-
PL/SQLをWindowsのBATファイル...
-
create databaseがうまくいきま...
-
comment on columnについてわか...
-
sqlplus で テキストファイルに...
-
DBMS_SQL.EXECUTEの問合せ結果件数
-
複数行をINSERTで『ORA-00911: ...
-
SQL*Loaderでのデータロード
-
【初心者です】SQLPLUSでのバッ...
-
SQL*Plus のSAVEとGETコマンド
-
phpMyAdminのコントロールパネ...
-
Oracleのタイムゾーン変更方法...
-
文字化け。
-
データベースファイル(.db)を開...
-
あるDBから別のDBのテーブルをs...
-
sql*loader 数値のロード
-
同じSQL文で極端に検索が遅くな...
-
数字で「そ」と「り」
-
mysqlにおけるホストのパーセン...
-
SQLServerのselect文でデータ数...
おすすめ情報