Oracle veritabanı 11g Express Edition'ı ilk kurduktan sonra yeni bir veritabanı nasıl oluşturulur?


112

Bilgisayarıma (Windows 7) Oracle Database 11g Express Edition kurdum ve Oracle SQL Developer'ı da kurdum.

Başlamak için, belki bir veya iki tabloyla basit bir veritabanı oluşturmak ve ardından veri eklemek ve sorgulamak için Oracle SQL Developer'ı kullanmak istiyorum.

Oracle SQL Developer'ı açtığımda, benden yeni bir bağlantı oluşturmamı istiyor, bu nedenle zaten bir veritabanının oluşturulduğunu varsayıyor.

Öyleyse sorum şu, Oracle 11g'de bir başlangıç ​​veritabanını nasıl oluşturabilirim?

Yanıtlar:


56

Bu bağlantı: Oracle 11g Sürüm 2'de Örnek Veritabanı Oluşturma, örnek veritabanı oluşturmanın iyi bir örneğidir.

Bu bağlantı: Oracle 11g Veritabanı Ortak Sorunları için Yeni Başlayanlar Kılavuzu , veritabanınızı oluştururken bazı yaygın sorunlarla karşılaşırsanız size yardımcı olacaktır.

İyi şanslar!

DÜZENLEME: XE'yi kullanırken, SQL * Plus ve SQL Developer vb. Kullanarak bağlanmak için önceden oluşturulmuş bir DB'ye sahip olmanız gerekir. Bilgi burada: Oracle Database Express Edition'a Bağlanmak ve Keşfetmek .

Ayıkla:

SQL Developer'dan Oracle Database XE'ye Bağlanma SQL Developer, Oracle Database XE'ye erişebileceğiniz bir istemci programıdır. Oracle Database XE 11g Sürüm 2 (11.2) ile SQL Developer sürüm 3.0 kullanmanız gerekir. Bu bölüm, SQL Developer'ın sisteminizde kurulu olduğunu varsayar ve onu nasıl başlatacağınızı ve Oracle Database XE'ye nasıl bağlanacağınızı gösterir. Sisteminizde SQL Developer kurulu değilse, kurulum talimatları için Oracle Database SQL Developer Kullanım Kılavuzu'na bakın.

Not:

Aşağıdaki prosedür için: Sisteminizde SQL Developer'ı ilk kez başlattığınızda, 1. adımda java.exe dosyasının tam yolunu sağlamalısınız.

4. adım için, bir kullanıcı adı ve parolaya ihtiyacınız vardır.

6. adım için bir ana bilgisayar adına ve bağlantı noktasına ihtiyacınız var.

SQL Developer'dan Oracle Database XE'ye bağlanmak için:

SQL Developer'ı başlatın.

Talimatlar için Oracle Database SQL Geliştirici Kullanım Kılavuzu'na bakın.

Sisteminizde SQL Developer'ı ilk kez başlatıyorsanız, java.exe dosyasının tam yolunu girmeniz istenir (örneğin, C: \ jdk1.5.0 \ bin \ java.exe). Ya komut isteminden sonra tam yolu yazın ya da ona göz atın ve ardından Enter tuşuna basın.

Oracle SQL Developer penceresi açılır.

Pencerenin gezinme çerçevesinde Bağlantılar'a tıklayın.

Bağlantılar bölmesi görüntülenir.

Bağlantılar bölmesinde Yeni Bağlantı simgesine tıklayın.

Yeni / Veritabanı Bağlantısını Seç penceresi açılır.

Yeni / Veritabanı Bağlantısını Seç penceresinde, Bağlantı Adı, Kullanıcı Adı ve Parola alanlarına uygun değerleri yazın.

Güvenlik için yazdığınız parola karakterleri yıldız olarak görünür.

Parola alanının yakınında Parolayı Kaydet onay kutusu bulunur. Varsayılan olarak seçimi kaldırılmıştır. Oracle varsayılanı kabul etmenizi önerir.

Yeni / Veritabanı Bağlantısını Seç penceresinde, Oracle sekmesine tıklayın.

Oracle bölmesi görünür.

Oracle bölmesinde:

Bağlantı Türü için varsayılanı (Temel) kabul edin.

Rol için varsayılanı kabul edin.

Ana Bilgisayar Adı ve Bağlantı Noktası alanlarında, varsayılanları kabul edin veya uygun değerleri yazın.

SID seçeneğini seçin.

SID alanına varsayılanı kabul et (xe) yazın.

Yeni / Veritabanı Bağlantısını Seç penceresinde, Test düğmesine tıklayın.

Bağlantı test edilir. Bağlantı başarılı olursa, Durum göstergesi boştan Başarılı olarak değişir.

Resim success.gif açıklaması

Test başarılı olursa, Bağlan düğmesine tıklayın.

Yeni / Veritabanı Bağlantısını Seç penceresi kapanır. Bağlantılar bölmesi, 4. adımda Bağlantı Adı alanına adını girdiğiniz bağlantıyı gösterir.

SQL Developer ortamındasınız.

SQL Developer'dan çıkmak için Dosya menüsünden Çıkış'ı seçin.


1
Veritabanı Yapılandırma Yardımcısı'nın veritabanıyla birlikte dağıtıldığını mı söylüyorsunuz? Ben bulamadım
Zo72

5
Özür dilerim, az önce XE kullandığınızı fark ettim. Yalnızca bir örneğe izin verir, yazılımı yüklediğinizde sizden örneği oluşturmanızı istemedi mi? Önceden oluşturulmuş SID "XE" ile bir veritabanınız olmalıdır. Ayrıca SYS ve SYSTEM kullanıcıları için de şifrelerinizi belirlemelisiniz.
Ollie

3
Yardımın için teşekkürler, kontrol edeceğim ve doğruysa seni doğru işaretleyeceğim
Zo72

Kırık olma ihtimaline karşı bağlantılara atıfta bulunurken açıklayıcı terimler kullanmak daha iyidir, ilkinde olduğu gibi kırıldığını buldum. Daha sonra bir google aramasıyla bulabilirsiniz. HTH
James Drinkard

59

XE .... kurduğunuzda, otomatik olarak "XE" adlı bir veritabanı oluşturdu. Oturum açmak için belirlediğiniz oturum açma "sisteminizi" ve parolanızı kullanabilirsiniz.

Anahtar bilgi

sunucu: (tanımladığınız)
bağlantı noktası: 1521
veritabanı: XE
kullanıcı adı: sistem
şifresi: (tanımladınız)

Ayrıca Oracle zorlaşıyor ve size kolayca başka bir veritabanı oluşturmanızı söylemiyor. "XE" dışında daha fazla veritabanı oluşturmak için SQL veya başka bir araç kullanmanız gerekir.


6
Teşekkürler, harika cevap, tam da ihtiyacım olan şey buydu. Bu cevap en üste oylanmalıdır.
KevSheedy

1
Bu, kabul edilenden çok daha yararlı bir cevaptır.
AfterWorkGuinness

1
Bu soruya cevap vermiyor
Philip Rego

9

XE'de yeni bir şema oluşturmak isterseniz, bir KULLANICI oluşturmanız ve onun ayrıcalıklarını atamanız gerekir. Bu adımları takip et:

  • SQL * Plus, komut satırı
SQL> connect sys as sysdba
  • Şifreyi gir
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;

Artık Oracle SQL Developer aracılığıyla bağlanabilir ve tablolarınızı oluşturabilirsiniz.


5

"Bir başlangıç ​​veritabanını nasıl oluştururum?"

XE'yi kurduğunuzda bir veritabanı oluşturdunuz. Bir noktada kurulum işlemi sizden SYSTEM hesabı için bir şifre girmenizi istedi. Uygulama menüsündeki SQL komut satırını kullanarak XE veritabanına bağlanmak için bunu kullanın.

XE belgeleri çevrimiçidir ve oldukça faydalıdır. Burada bulun .

11g XE'nin, biri sunucu başına yalnızca bir veritabanı olan çeşitli sınırlamaları olduğunu belirtmekte fayda var. Bu nedenle, önceden yüklenmiş veritabanını kullanmak mantıklı bir seçenektir.


Bu gerçekten bir cevap değil, sadece mevcut olanı mı kullan? Nasıl yenisinin yapılacağını sordu.
Gherbi Hicham

1
@gherbihicham - Arayıcı'nın asıl sorusu "bir ilk veritabanını nasıl oluştururum?" Kurulum işleminin bir başlangıç ​​veritabanı oluşturduğunu anlattım. Aslında, makine başına bir veritabanı sınırlaması olan XE kullanıyorlar, bu nedenle onlara başka bir veritabanını nasıl oluşturacaklarını söylemek anlamsız olurdu.
APC

1
Tamam adil, olumsuz oyumu kaldırdım.
Gherbi Hicham

2

Aşağıdaki kodu bir toplu iş dosyasına kaydedin (ör. CreateOraDbWin.bat). App_name, ora_dir vb. Gibi parametre değerlerini değiştirin, Dosyayı yönetici ayrıcalıklarıyla çalıştırın. Toplu iş dosyası, temel bir oracle veritabanı oluşturur:

Not : Çok zaman alabilir (yaklaşık 30 dakika)

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

Düzeltmelerinize ve geliştirmelerinize hoş geldiniz!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.