2012-03-02 65 views
93

Tôi đã cài đặt Oracle Database 11g Expressed Edition trên máy của tôi (windows 7) và tôi cũng đã cài đặt Oracle SQL Developer.Cách tạo cơ sở dữ liệu mới sau khi cài đặt cơ sở dữ liệu Oracle 11g Express Edition?

Tôi muốn tạo một cơ sở dữ liệu đơn giản để bắt đầu, có thể với một hoặc hai bảng và sau đó sử dụng Oracle SQL Developer để chèn dữ liệu và truy vấn nó.

Khi tôi mở Oracle SQL Developer, nó yêu cầu tôi tạo một kết nối mới, do đó nó giả định rằng cơ sở dữ liệu đã được tạo.

Vì vậy, câu hỏi của tôi là, làm cách nào để tạo cơ sở dữ liệu ban đầu trong Oracle 11g?

Trả lời

51

Liên kết này: Creating the Sample Database in Oracle 11g Release 2 là ví dụ tốt về tạo cơ sở dữ liệu mẫu.

Liên kết này: Newbie Guide to Oracle 11g Database Common Problems sẽ giúp bạn nếu bạn gặp phải một số sự cố thường gặp khi tạo cơ sở dữ liệu của mình.

Chúc bạn may mắn!

EDIT: Khi bạn đang sử dụng XE, bạn nên có một DB đã được tạo, để kết nối bằng cách sử dụng SQL * Plus và SQL Developer, vv thông tin ở đây: Connecting to Oracle Database Express Edition and Exploring It.

Extract:

Đang kết nối đến Oracle Database XE từ SQL SQL Developer Developer là một chương trình khách hàng mà bạn có thể truy cập vào Oracle Database XE. Với Cơ sở dữ liệu Oracle XE 11g Phiên bản 2 (11.2), bạn phải sử dụng SQL Developer phiên bản 3.0. Phần này giả định rằng Nhà phát triển SQL được cài đặt trên hệ thống của bạn và hiển thị cách khởi động và kết nối với Cơ sở dữ liệu Oracle XE. Nếu Nhà phát triển SQL không được cài đặt trên hệ thống của bạn, hãy xem Hướng dẫn sử dụng SQL cơ sở dữ liệu của Oracle Hướng dẫn cài đặt.

Lưu ý:

Đối với các thủ tục sau đây: Lần đầu tiên bạn khởi động SQL Developer trên hệ thống của bạn, bạn phải cung cấp đầy đủ đường dẫn đến java.exe ở bước 1.

Đối với bước 4, bạn Cần tên đăng nhập và mật khẩu.

Đối với bước 6, bạn cần có tên máy chủ và cổng.

Để kết nối với Oracle Database XE từ SQL Developer:

Bắt đầu SQL Developer.

Để biết hướng dẫn, hãy xem Hướng dẫn người dùng dành cho nhà phát triển cơ sở dữ liệu Oracle.

Nếu đây là lần đầu tiên bạn khởi động SQL Developer trên hệ thống , bạn được nhắc nhập đường dẫn đầy đủ tới java.exe (ví dụ: , C: \ jdk1.5.0 \ bin \ java.exe) . Nhập đường dẫn đầy đủ sau lời nhắc hoặc duyệt đến nó, sau đó nhấn phím Enter.

Cửa sổ Nhà phát triển SQL của Oracle sẽ mở ra.

Trong khung điều hướng của cửa sổ, nhấp vào Kết nối.

Ngăn Kết nối xuất hiện.

Trong ngăn Kết nối, hãy bấm vào biểu tượng Kết nối mới.

Cửa sổ Kết nối cơ sở dữ liệu mới/chọn sẽ mở ra.

Trong cửa sổ Kết nối cơ sở dữ liệu mới/chọn, nhập giá trị thích hợp trong các trường Tên kết nối, Tên người dùng và Mật khẩu.

Để bảo mật, các ký tự mật khẩu bạn nhập sẽ xuất hiện dưới dạng dấu hoa thị .

Gần trường Mật khẩu là hộp kiểm Lưu mật khẩu. Theo mặc định, nó được bỏ chọn. Oracle khuyến nghị chấp nhận mặc định.

Trong cửa sổ New/Select Database Connection, nhấp vào tab Oracle.

Ngăn Oracle xuất hiện.

Trong ngăn Oracle:

Đối với loại kết nối, chấp nhận mặc định (cơ bản).

Đối với vai trò, hãy chấp nhận mặc định.

Trong trường Tên máy chủ và Cổng, chấp nhận giá trị mặc định hoặc nhập giá trị thích hợp.

Chọn tùy chọn SID.

Trong trường SID, nhập chấp nhận mặc định (xe).

Trong cửa sổ Kết nối cơ sở dữ liệu mới/Chọn, bấm nút Kiểm tra.

Kết nối được kiểm tra. Nếu kết nối thành công, chỉ báo Trạng thái thay đổi từ trống thành Thành công.

Mô tả minh họa thành công.gif

Nếu thử nghiệm thành công, hãy nhấp vào nút Kết nối.

Cửa sổ Kết nối cơ sở dữ liệu mới/chọn đóng. Ngăn kết nối hiển thị kết nối có tên bạn đã nhập trong trường Tên kết nối trong bước 4.

Bạn đang ở trong môi trường nhà phát triển SQL.

Để thoát khỏi Nhà phát triển SQL, chọn Thoát từ trình đơn Tệp.

+1

bạn có nghĩa là Trợ lý cấu hình cơ sở dữ liệu được triển khai với cơ sở dữ liệu không? Tôi không thể tìm thấy nó – Zo72

+5

Xin lỗi, tôi chỉ nhận thấy bạn đang sử dụng XE. Nó chỉ cho phép một cá thể, nó không nhắc bạn tạo cá thể khi bạn cài đặt phần mềm? Bạn nên có một cơ sở dữ liệu với SID "XE" đã được tạo ra. Bạn cũng nên thiết lập mật khẩu cho người dùng SYS và SYSTEM. – Ollie

+3

Cảm ơn sự giúp đỡ của bạn, tôi sẽ kiểm tra điều đó và nếu đúng, tôi sẽ đánh dấu bạn ngay – Zo72

5

"Làm cách nào để tạo cơ sở dữ liệu ban đầu?"

Bạn đã tạo cơ sở dữ liệu khi bạn cài đặt XE. Tại một số điểm, quá trình cài đặt nhắc bạn nhập mật khẩu cho tài khoản SYSTEM. Sử dụng điều đó để kết nối với cơ sở dữ liệu XE bằng cách sử dụng dòng lệnh SQL trên menu ứng dụng.

Tài liệu XE trực tuyến và khá hữu ích.Find it here.

47

Khi bạn cài đặt XE .... nó sẽ tự động tạo ra một cơ sở dữ liệu được gọi là "XE". Bạn có thể sử dụng "hệ thống" và mật khẩu đăng nhập mà bạn đã đặt để đăng nhập.

thông tin chính

server: (bạn định nghĩa)
cổng: 1521
cơ sở dữ liệu: XE
username: hệ thống
mật khẩu: (bạn định nghĩa)

Cũng Oracle đang được khó khăn và không cho bạn dễ dàng tạo cơ sở dữ liệu khác. Bạn phải sử dụng SQL hoặc công cụ khác để tạo thêm cơ sở dữ liệu bên cạnh "XE".

+4

Cảm ơn, câu trả lời tuyệt vời, đây chính xác là những gì tôi cần. Câu trả lời này sẽ được bình chọn lên đầu. – KevSheedy

+1

Đây là câu trả lời hữu ích hơn nhiều so với câu trả lời được chấp nhận. – AfterWorkGuinness

+0

Điều này không trả lời được câu hỏi –

2

Lưu mã sau vào tệp lô (ví dụ: createOraDbWin.bat). Thay đổi các giá trị tham số như app_name, ora_dir, v.v., Chạy tệp có các đặc quyền quản trị. Các tập tin batch tạo ra một cơ sở dữ liệu cơ bản oracle:

Note: Có thể mất nhiều thời gian (nói khoảng 30 phút)

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 

Chào mừng bạn điều chỉnh và cải tiến của bạn!

Các vấn đề liên quan