Oracle Database 11g Express Editionを最初にインストールした後に新しいデータベースを作成するにはどうすればよいですか?


112

PC(Windows 7)にOracle Database 11g Express Editionをインストールし、Oracle SQL Developerもインストールしました。

まず、1つまたは2つのテーブルを使用して単純なデータベースを作成し、Oracle SQL Developerを使用してデータを挿入してクエリを実行します。

Oracle SQL Developerを開くと、新しい接続を作成するように求められるため、データベースがすでに作成されていると想定しています。

だから私の質問は、Oracle 11gで初期データベースをどのように作成するのですか?

回答:


56

このリンク:Oracle 11gリリース2でのサンプルデータベースの作成は、サンプルデータベースを作成する良い例です。

このリンク:Oracle 11gデータベースの初心者向けガイド一般的な問題は、データベースの作成でいくつかの一般的な問題が発生した場合に役立ちます。

がんばって!

編集:XEを使用しているため、SQL * PlusやSQL Developerなどを使用して接続するには、DBが既に作成されている必要があります。情報は、「Oracle Database Express Editionへの接続と探索」です

エキス:

SQL DeveloperからOracle Database XEへの接続SQL Developerは、Oracle Database XEにアクセスできるクライアントプログラムです。Oracle Database XE 11gリリース2(11.2)では、SQL Developerバージョン3.0を使用する必要があります。このセクションでは、SQL Developerがシステムにインストールされていることを前提とし、SQL Developerを起動してOracle Database XEに接続する方法を示します。SQL Developerがシステムにインストールされていない場合、インストール手順についてはOracle Database SQL Developerユーザーズガイドを参照してください。

注意:

次の手順の場合:システムでSQL Developerを初めて起動するときは、手順1でjava.exeへの完全パスを指定する必要があります。

手順4では、ユーザー名とパスワードが必要です。

手順6では、ホスト名とポートが必要です。

SQL DeveloperからOracle Database XEに接続するには:

SQL Developerを起動します。

手順については、 『Oracle Database SQL Developerユーザーズ・ガイド』を参照してください。

システムで初めてSQL Developerを起動した場合は、java.exeへのフルパス(C:\ jdk1.5.0 \ bin \ java.exeなど)を入力するように求められます。プロンプトの後に完全なパスを入力するか、それを参照して、Enterキーを押します。

Oracle SQL Developerウィンドウが開きます。

ウィンドウのナビゲーションフレームで、[接続]をクリックします。

[接続]ペインが表示されます。

[接続]ウィンドウで、[新しい接続]アイコンをクリックします。

「データベース接続の新規作成/選択」ウィンドウが開きます。

[データベース接続の新規作成/選択]ウィンドウで、[接続名]、[ユーザー名]、および[パスワード]フィールドに適切な値を入力します。

セキュリティ保護のため、入力するパスワード文字はアスタリスクで表示されます。

「パスワード」フィールドの近くには、「パスワードを保存」チェックボックスがあります。デフォルトでは選択されていません。デフォルトを受け入れることをお薦めします。

[データベース接続の新規作成/選択]ウィンドウで、[Oracle]タブをクリックします。

Oracleペインが表示されます。

Oracleペインで:

「接続タイプ」で、デフォルト(基本)を受け入れます。

「役割」で、デフォルトを受け入れます。

「ホスト名」および「ポート」フィールドで、デフォルトを受け入れるか、適切な値を入力します。

オプションSIDを選択します。

「SID」フィールドに、デフォルト(xe)を受け入れて入力します。

[データベース接続の新規作成/選択]ウィンドウで、[テスト]ボタンをクリックします。

接続がテストされます。接続が成功すると、ステータスインジケータが空白から成功に変わります。

図success.gifの説明

テストが成功した場合は、[接続]ボタンをクリックします。

新規/データベース接続の選択ウィンドウが閉じます。「接続」ペインには、手順4で「接続名」フィールドに入力した名前の接続が表示されます。

SQL Developer環境にいます。

SQL Developerを終了するには、「ファイル」メニューから「終了」を選択します。


1
Database Configuration Assistantがデータベースと共にデプロイされるということですか?見つかりませんでした
Zo72、2012年

5
申し訳ありませんが、XEを使用していることに気づきました。1つのインスタンスのみが許可されますが、ソフトウェアのインストール時にインスタンスを作成するように求められませんでしたか?SID「XE」のデータベースがすでに作成されているはずです。SYSおよびSYSTEMユーザーのパスワードも設定しておく必要があります。
Ollie

3
あなたの助けをありがとう、私はそれをチェックし、正しければ私はあなたを正しくマークします
Zo72

リンクが壊れた場合に備えて、リンクを参照するときに説明的な用語を使用することをお勧めします。その後、グーグル検索を介してそれを見つけることができます。HTH
ジェームズドリンカード2015

59

XE ....をインストールすると、「XE」というデータベースが自動的に作成されます。ログイン用に設定したログイン「システム」とパスワードを使用できます。

重要な情報

サーバー:(定義済み)
ポート:1521
データベース:XE
ユーザー名:システム
パスワード:(定義済み)

また、Oracleは困難であり、別のデータベースを簡単に作成することはできません。「XE」以外のデータベースを作成するには、SQLまたは別のツールを使用する必要があります。


6
ありがとう、すばらしい答えです。これがまさに私が必要としていたことです。この回答はトップに投票する必要があります。
KevSheedy 2013年

1
これは、承認された回答よりもはるかに役立つ回答です。
AfterWorkGuinness 2016

1
これは質問の答えにはなり
ませ

9

XEで新しいスキーマを作成する場合は、USERを作成してその特権を割り当てる必要があります。次の手順を実行します:

  • SQL * Plusコマンドラインを開く
SQL> connect sys as sysdba
  • パスワードを入力してください
SQL> CREATE USER myschema IDENTIFIED BY Hga&dshja;
SQL> ALTER USER myschema QUOTA unlimited ON SYSTEM;
SQL> GRANT CREATE SESSION, CONNECT, RESOURCE, DBA TO myschema;
SQL> GRANT ALL PRIVILEGES TO myschema;

これで、Oracle SQL Developerを介して接続し、テーブルを作成できます。


5

「どうすれば初期データベースを作成できますか?」

XEのインストール時にデータベースを作成しました。ある時点で、インストールプロセスにより、SYSTEMアカウントのパスワードを入力するように求められました。これを使用して、アプリケーションメニューのSQLコマンドラインを使用してXEデータベースに接続します。

XEのドキュメントはオンラインであり、かなり役に立ちます。 こちらで見つけてください

11g XEにはいくつかの制限があり、そのうちの1つはサーバーごとに1つのデータベースのみであることは言及に値します。したがって、事前にインストールされたデータベースを使用するのが賢明なオプションです。


それは実際には答えではありません。既存のものを使用してください。彼は新しいものを作る方法を尋ねました。
Gherbi Hicham

1
@gherbihicham-Seekerの実際の質問は「初期データベースを作成するにはどうすればよいですか?」インストールプロセスで初期データベースが作成されることを説明しました。実際、彼らはXEを使用しており、これはマシンごとに1つのデータベースという明示的な制限があるため、別のデータベースを作成する方法を伝えるのは無意味だったでしょう。
APC

1
OKフェア、私の反対投票を削除しました。
Gherbi Hicham

2

次のコードをバッチファイル(例:createOraDbWin.bat)に保存します。app_name、ora_dirなどのパラメータ値を変更し、管理者権限でファイルを実行します。バッチファイルは、基本的なOracleデータベースを作成します。

:時間がかかる場合があります(30分程度)

REM ASSUMPTIONS
rem oracle xe has been installed
rem oracle_home has been set
rem oracle_sid has been set
rem oracle service is running

REM SET PARAMETERS
set char_set =al32utf8
set nls_char_set =al16utf16

set ora_dir=d:\app\db\oracle
set version=11.2.0.0
set app_name=xyz
set db_name=%app_name%_db
set db_sid=%db_name%_sid
set db_ins=%db_name%_ins
set sys_passwd=x3y5z7
set system_passwd=1x4y9z

set max_log_files=32
set max_log_members=4
set max_log_history=100
set max_data_files=254
set max_instances=1

set version_dir=%ora_dir%\%version%
set db_dir=%version_dir%\%db_name%

set instl_temp_dir=%db_dir%\instl\script

set system_dir=%db_dir%\system
set user_dir=%db_dir%\user
set undo_dir=%db_dir%\undo
set sys_aux_dir=%db_dir%\sysaux
set temp_dir=%db_dir%\temp
set control_dir=%db_dir%\control

set pfile_dir=%db_dir%\pfile
set data_dir=%db_dir%\data
set index_dir=%db_dir%\index
set log_dir=%db_dir%\log
set backup_dir=%db_dir%\backup
set archive_dir=%db_dir%\archive

set data_dir=%db_dir%\data
set index_dir=%db_dir%\index
set log_dir=%db_dir%\log
set backup_dir=%db_dir%\backup
set archive_dir=%db_dir%\archive
set undo_dir=%db_dir%\undo
set default_dir=%db_dir%\default

set system_tbs=%db_name%_system_tbs
set user_tbs=%db_name%_user_tbs
set sys_aux_tbs=%db_name%_sys_aux_tbs
set temp_tbs=%db_name%_temp_tbs
set control_tbs=%db_name%_control_tbs

set data_tbs=%db_name%_data_tbs
set index_tbs=%db_name%_index_tbs
set log_tbs=%db_name%_log_tbs
set backup_tbs=%db_name%_backup_tbs
set archive_tbs=%db_name%_archive_tbs
set undo_tbs=%db_name%_undo_tbs
set default_tbs=%db_name%_default_tbs

set system_file=%system_dir%\%db_name%_system.dbf
set user_file=%user_dir%\%db_name%_user.dbf
set sys_aux_file=%sys_aux_dir%\%db_name%_sys_aux.dbf
set temp_file=%temp_dir%\%db_name%_temp.dbf
set control_file=%control_dir%\%db_name%_control.dbf

set data_file=%data_dir%\%db_name%_data.dbf
set index_file=%index_dir%\%db_name%_index.dbf
set backup_file=%backup_dir%\%db_name%_backup.dbf
set archive_file=%archive_dir%\%db_name%_archive.dbf
set undo_file=%undo_dir%\%db_name%_undo.dbf
set default_file=%default_dir%\%db_name%_default.dbf

set log1_file=%log_dir%\%db_name%_log1.log
set log2_file=%log_dir%\%db_name%_log2.log
set log3_file=%log_dir%\%db_name%_log3.log

set init_file=%pfile_dir%\init%db_sid%.ora
set db_create_file=%instl_temp_dir%\createdb.sql
set db_drop_file=dropdb.sql

set db_create_log=%instl_temp_dir%\db_create.log
set db_drop_log=db_drop.log

set oracle_sid=%db_sid%

REM WRITE DROP DATABASE SQL COMMANDS TO FILE
echo shutdown immediate;>%db_drop_file%
echo startup mount exclusive restrict;>>%db_drop_file%
echo drop database;>>%db_drop_file%

REM EXECUTE DROP DATABASE SQL COMMANDS FROM THE FILE    
rem sqlplus -s "/as sysdba" @"%db_drop_file%">%db_drop_log%

REM DELETE WINDOWS ORACLE SERVICE
rem oradim -delete -sid %db_sid%

REM CREATE DIRECTORY STRUCTURE
md %system_dir%
md %user_dir%
md %sys_aux_dir%
md %temp_dir%
md %control_dir%

md %pfile_dir%
md %data_dir%
md %index_dir%
md %log_dir%
md %backup_dir%
md %archive_dir%
md %undo_dir%
md %default_dir%
md %instl_temp_dir%

REM WRITE INIT FILE PARAMETERS TO INIT FILE
echo db_name='%db_name%'>%init_file%
echo memory_target=1024m>>%init_file%
echo processes=150>>%init_file%
echo sessions=20>>%init_file%
echo audit_file_dest=%user_dir%>>%init_file%
echo audit_trail ='db'>>%init_file%
echo db_block_size=8192>>%init_file%
echo db_domain=''>>%init_file%
echo diagnostic_dest=%db_dir%>>%init_file%
echo dispatchers='(protocol=tcp) (service=%app_name%xdb)'>>%init_file%
echo shared_servers=4>>%init_file%
echo open_cursors=300>>%init_file%
echo remote_login_passwordfile='exclusive'>>%init_file%
echo undo_management=auto>>%init_file%
echo undo_tablespace='%undo_tbs%'>>%init_file%
echo control_files = ("%control_dir%\control1.ora", "%control_dir%\control2.ora")>>%init_file%
echo job_queue_processes=4>>%init_file%
echo db_recovery_file_dest_size = 10g>>%init_file%
echo db_recovery_file_dest=%log_dir%>>%init_file%
echo compatible ='11.2.0'>>%init_file%

REM WRITE DB CREATE AND ITS RELATED SQL COMMAND TO FILE    
echo startup nomount pfile='%init_file%';>>%db_create_file%
echo.>>%db_create_file%

echo create database %db_name%>>%db_create_file%
echo user sys identified by %sys_passwd%>>%db_create_file%
echo user system identified by %system_passwd%>>%db_create_file%
echo logfile group 1 ('%log1_file%') size 100m,>>%db_create_file%
echo group 2 ('%log2_file%') size 100m,>>%db_create_file%
echo group 3 ('%log3_file%') size 100m>>%db_create_file%
echo maxlogfiles %max_log_files%>>%db_create_file%
echo maxlogmembers %max_log_members%>>%db_create_file%
echo maxloghistory %max_log_history%>>%db_create_file%
echo maxdatafiles %max_data_files%>>%db_create_file%
echo character set %char_set %>>%db_create_file%
echo national character set %nls_char_set %>>%db_create_file%
echo extent management local>>%db_create_file%
echo datafile '%system_file%' size 325m reuse>>%db_create_file%
echo sysaux datafile '%sys_aux_file%' size 325m reuse>>%db_create_file%
echo default tablespace %default_tbs%>>%db_create_file%
echo datafile '%default_file%'>>%db_create_file%
echo size 500m reuse autoextend on maxsize unlimited>>%db_create_file%
echo default temporary tablespace %temp_tbs%>>%db_create_file%
echo tempfile '%temp_file%'>>%db_create_file%
echo size 20m reuse>>%db_create_file%
echo undo tablespace %undo_tbs%>>%db_create_file%
echo datafile '%undo_file%'>>%db_create_file%
echo size 200m reuse autoextend on maxsize unlimited;>>%db_create_file%
echo.>>%db_create_file%

echo @?\rdbms\admin\catalog.sql>>%db_create_file%
echo.>>%db_create_file%

echo @?\rdbms\admin\catproc.sql>>%db_create_file%
echo.>>%db_create_file%

echo create spfile from pfile='%init_file%';>>%db_create_file%
echo.>>%db_create_file%

echo shutdown immediate;>>%db_create_file%
echo.>>%db_create_file%

echo startup;>>%db_create_file%
echo.>>%db_create_file%

echo show parameter spfile;>>%db_create_file%
echo.>>%db_create_file%

REM CREATE WINDOWS ORACLE SERVICE
oradim -new -sid %db_sid% -startmode auto

REM EXECUTE DB CREATE SQL COMMANDS FROM FILE
sqlplus -s "/as sysdba" @"%db_create_file%">%db_create_log%

pause

修正と改善を歓迎します!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.