Làm thế nào để tạo cơ sở dữ liệu mới sau khi cài đặt cơ sở dữ liệu oracle 11g Express Edition?


112

Tôi đã cài đặt Oracle Database 11g Express Edition trên máy tính của mình (windows 7) và tôi cũng đã cài đặt Oracle SQL Developer.

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?

Câu trả lời:


56

Liên kết này: Tạo cơ sở dữ liệu mẫu trong Oracle 11g Release 2 là một ví dụ điển hình về việc tạo cơ sở dữ liệu mẫu.

Liên kết này: Hướng dẫn cho người mới sử dụng Cơ sở dữ liệu Oracle 11g Các vấn đề thường gặp sẽ giúp ích cho bạn nếu bạn gặp một số vấn đề phổ biến khi tạo cơ sở dữ liệu của mình.

May mắn nhất!

CHỈNH SỬA: 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 SQL * Plus và SQL Developer, v.v. thông tin có ở đây: Kết nối với Oracle Database Express Edition và Khám phá nó .

Trích xuất:

Kết nối với Oracle Database XE từ SQL Developer SQL Developer là một chương trình khách mà bạn có thể truy cập Oracle Database XE. Với Oracle Database XE 11g Release 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 SQL Developer đã được cài đặt trên hệ thống của bạn và chỉ ra cách khởi động nó và kết nối với Oracle Database XE. Nếu SQL Developer chưa được cài đặt trên hệ thống của bạn, hãy xem Hướng dẫn sử dụng Oracle Database SQL Developer để biết hướng dẫn cài đặt.

Ghi chú:

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

Đối với bước 4, bạn cần có tên người dùng 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:

Khởi động SQL Developer.

Để được hướng dẫn, hãy xem Hướng dẫn dành cho nhà phát triển SQL Database của Oracle.

Nếu đây là lần đầu tiên bạn khởi động SQL Developer trên hệ thống của mình, bạn sẽ được nhắc nhập đường dẫn đầy đủ đến 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 đường dẫn đó rồi nhấn phím Enter.

Cửa sổ Oracle SQL Developer 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, 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 các giá trị thích hợp vào 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ổ Kết nối Cơ sở dữ liệu Mới / Chọn, bấm vào tab Oracle.

Ngăn Oracle xuất hiện.

Trong ngăn Oracle:

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

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

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

Chọn tùy chọn SID.

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

Trong cửa sổ Kết nối Cơ sở dữ liệu Mới / Chọn, bấm vào 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 chuyển từ trống thành Thành công.

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

Nếu kiểm tra 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 lại. Ngăn Kết nối hiển thị kết nối có tên mà bạn đã nhập vào trường Tên Kết nối ở 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, hãy chọn Thoát từ menu Tệp.


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

5
Xin lỗi, tôi vừa nhận thấy bạn đang sử dụng XE. Nó chỉ cho phép một phiên bản, đã không nhắc bạn tạo phiên bản 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. Bạn cũng nên thiết lập mật khẩu của mình cho người dùng HỆ THỐNG và HỆ THỐNG.
Ollie

3
Nhờ sự giúp đỡ của bạn tôi sẽ kiểm tra xem ra ngoài và nếu đúng tôi sẽ đánh dấu bạn ngay
Zo72

Tốt hơn là sử dụng các thuật ngữ mô tả khi tham chiếu đến các liên kết trong trường hợp chúng bị hỏng, như với cái đầu tiên của bạn, cái mà tôi thấy đã bị hỏng. Sau đó, bạn có thể tìm thấy nó thông qua tìm kiếm trên google. HTH
James Drinkard

59

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

Thông tin chính

máy chủ: (bạn đã xác định)
cổng:
cơ sở dữ liệu 1521 :
Tên người dùng XE :
mật khẩu hệ thống : (bạn đã xác định)

Ngoài ra Oracle cũng đang gặp khó khăn và không cho bạn biết dễ dàng tạo một cơ sở dữ liệu khác. Bạn phải sử dụng SQL hoặc một công cụ khác để tạo thêm cơ sở dữ liệu ngoài "XE".


6
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 ở đầu.
KevSheedy

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

1
Điều này không trả lời câu hỏi
Philip Rego

9

Nếu bạn muốn tạo một lược đồ mới trong XE, bạn cần tạo một NGƯỜI DÙNG và chỉ định các đặc quyền của nó. Làm theo các bước sau:

  • Mở dòng lệnh SQL * Plus
SQL> connect sys as sysdba
  • Nhập mật khẩu
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;

Bây giờ bạn có thể kết nối thông qua Oracle SQL Developer và tạo các bảng của mình.


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 cài đặt XE. Tại một số thời điểm, quá trình cài đặt đã nhắc bạn nhập mật khẩu cho tài khoản HỆ THỐNG. Sử dụng nó để kết nối với cơ sở dữ liệu XE bằ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. Tìm nó ở đây .

Điều đáng nói là XE 11g có một số hạn chế, một trong số đó là chỉ có một cơ sở dữ liệu trên mỗi máy chủ. Vì vậy, sử dụng cơ sở dữ liệu được cài đặt sẵn là một lựa chọn hợp lý.


Đó không thực sự là một câu trả lời, chỉ cần sử dụng câu trả lời hiện có? Anh ta hỏi làm thế nào để làm một cái mới.
Gherbi Hicham

1
@gherbihicham - câu hỏi thực sự của Người tìm kiếm là "làm cách nào để tạo cơ sở dữ liệu ban đầu?" Tôi đã giải thích rằng quá trình cài đặt đã tạo ra một cơ sở dữ liệu ban đầu. Trên thực tế, họ đang sử dụng XE có giới hạn rõ ràng về một cơ sở dữ liệu cho mỗi máy, vì vậy việc nói với họ cách tạo cơ sở dữ liệu khác sẽ là vô nghĩa.
APC

1
Ok công bằng, đã xóa phiếu phản đối của tôi.
Gherbi Hicham

2

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

Lưu ý : Có thể mất nhiều thời gian (giả sử 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 những sửa chữa và cải tiến của bạn!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.