Oracle thực hành những tác vụ cơ bản
MỤC LỤC
1. GIỚI THIỆU EBOOK ORACLE THỰC HÀNH . 4
2. GIỚI THIỆU ORACLE . 5
3. CÀI ĐẶT ORACLE VÀ TẠO MỚI DATABASE . 5
4. TẠO MỚI SCHEMA TRONG ORACLE . 14
5. KHÁI NIỆM SCHEMA VÀ USER TRONG ORACLE . 15
6. LIỆT KÊ DANH SÁCH SCHEMA TRONG ORACLE . 18
7. TẠO MỚI TABLESAPCE TRONG ORACLE . 20
8. TẠO BẢNG TRONG ORACLE VỚI ID TỰ ĐỘNG TĂNG . 22
9. IMPORT / EXPORT DỮ LIỆU TRONG ORACLE . 26
10. CÀI ĐẶT ORACLE CLIENT . 31
11. KẾT NỐI ORACLE CLIENT TỚI ORACLE DATABASE SERVER . 44
12. CÀI ĐẶT ORACLE SQL DEVELOPER 3 . 54
13. HƯỚNG DẪN GỠ BỎ ORACLE CLIENT. 60
14. PHỤ LỤC . 67
A. Thay đổi thiết lập Character Set trong Oracle Database . 67
B. Một số lệnh hữu ích trong Oracle SQL Plus . 70
C. Khắc phục một số lỗi cơ bản trong Oracle . 73
1) Khắc phục lỗi ORA-28056: Writing audit records to Windows Event Log
failed 73
2) Khắc phục lỗi ORA-39213 – Metadata processing is not available. 77
3) Khắc phục lỗi “Some required prerequisite checks have failed” khi cài
đặt Oracle Client 11g trênn Windows 7 . 78
g dẫn trên xin bạn vui lòng liên hệ với tôi qua form liên lạc. trên blog 14. PHỤ LỤC A. Thay đổi thiết lập Character Set trong Oracle Database Thông thường nếu bạn chọn chế độ mặc định tạo database trong lúc cài đặt oracle, hoặc bạn tạo database sau khi quát trình cài đặt kết thúc nhưng không chú ý tới phần thiết lập Character Set thì mặc định Oracle sẽ đặt Character Set là MSWIN1252. Nếu bạn muốn thay đổi thiết lập này, ví dụ chuyển qua Character Set là AL32UTF8 – chế độ hỗ trợ tốt cho dữ liệu là tiếng Việt thì bạn có thể thực hiện như sau. ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 68 Login vào Oracle SQL Plus Bạn vào cửa sổ Command Dos (hoặc Command Prompt) bằng cách nhấn đồng thời 2 phím Windows và R sau đó gõ cmd. Tại cửa sổ Command Dos hiện ra bạn gõ sqlplus “/as sysdba” để đăng nhập vào SQL Plus với quyền sysdba. Shutdown database hiện tại Chúng ta sẽ thực hiện chỉnh sửa Character Set khi Oracle được khởi động ở chế độ RESTRICT nên trước hết bạn hãy shutdown database hiện tại sau đó chọn khởi động lại ở chế độ RESTRICT. SHUTDOWN IMMEDIATE; Khởi động lại database trong chế độ RESTRICT STARTUP RESTRICT; Dùng câu lệnh ALTER để thay đổi Character Set thành AL32UTF8 Sau khi database đã được khởi động lại trong chế độ RESTRICT, bạn gõ dòng lệnh sau để thay đổi Character Set của database hiện tại thành AL32UTF8: ALTER DATABASE CHARACTER SET INTERNAL_USE AL32UTF8; Bạn có thể thay AL32UTF8 bằng Character Set phù hợp với mục đích sử dụng ở câu lệnh trên. ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 69 Để kiểm tra tra thiết lập Character Set hiện tại của database bạn dùng câu lệnh sau trong cửa sổ SQL PLus: SELECT VALUE FROM nls_database_parameters WHERE parameter='NLS_CHARACTERSET'; Sau khi thay đổi Character Set trên máy Oracle Server bạn cũng nên thay đổi thiết lập Character Set cho máy Oracle Client bằng cách: Tại máy Oracle Client bạn vào Windows Registry và tìm tới khóa HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient11g_home1. Sau đó bạn Edit String khóa con NLS_LANG trong khóa KEY_OraClient11g_home1 và thay Character cũ (VD: AMERICAN_AMERICA.WE8MSWIN1252) sang Character Set mới là AL32UTF8. ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 70 Việc thay đổi giá trị trong Registry của Windows có độ rủi ro khá cao và có thể bạn sẽ không đăng nhập được vào Windows sau khi thực hiện chỉnh sửa Registry. Vì thế bạn nên thực hiện thao tác backup Registry trước khi thực hiện, việc này đảm bảo nếu thao tác chỉnh sửa của bạn bị sai bạn vẫn có thể restore lại phiên bản Registry chuẩn trước đó. Nếu bạn không thay đổi Character Set tại máy Oracle Client thì khi bạn bật một công cụ kết nối từ Oracle Client tới Server thì phía Client sẽ có thông báo như sau: B. Một số lệnh hữu ích trong Oracle SQL Plus Nếu bạn thường xuyên làm việc cùng Orale thì việc sử dụng các lệnh trong SQL Plus để thực hiện các thao tác như: đăng nhập với quyền sysdba, liệt kê các schema, các tablespace ... sẽ giúp bạn nhanh chóng truy vấn được thông tin và tăng tốc độ thực thi công việc. Qua quá trình sử dụng Oracle tôi nhận thấy có một số câu lệnh hữu ích và được sử dụng khá thường xuyên, tôi sẽ liệt kê và chia sẻ với các bạn trong bảng dưới đây. # Câu lệnh Ý nghĩa 1 sqlplus "/as sysdba" Đăng nhập vào SQLPlus với quyền sysdba 2 connect user/pass; Đăng nhập vào 1 tài khoản bất kỳ với ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 71 # Câu lệnh Ý nghĩa username = user, password = pass. 3 select * from global_name; Xem SID hay global name của cơ sở dữ liệu Oracle hiện tại select * from v$version; Hiển thị phiên bản của Oracle 4 select username from all_users order by username; Liệt kê các users / schemas hiện có. Để bỏ qua các users mặc định của Oracle và chỉ liệt kê các user do bạn khởi tạo bạn thực hiện theo hướng dẫn sau. 5 select table_name from all_tables where owner='USER1'; Liệt kê các bảng trong schema = user1. 6 select * from v$tablespace; Liêt kê các tablespace hiện có 7 show user; Hiển thị user đang đăng nhập vào Oracle. 8 alter user user1 identified by pass1; Thay đổi password mới = pass1 của user1 trong Oracle 9 alter user sample_schema account unlock; Unlock user trong Oracle Các câu lệnh trên trừ câu lệnh số 1 là thực hiện từ cửa sổ Command Dos còn các câu lệnh từ 2 – 9 là thực hiện khi bạn đã đăng nhập vào SQL Plus. Quá trình đăng nhập vào SQL Plus được trình bày như bên dưới. ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 72 Đăng nhập với tài khoản sysdba. Bạn vào cửa sổ Command Dos, sau đó gõ dòng lệnh sqlplus “/as sysdba”, bạn sẽ đăng nhập vào Oracle với chế độ sysdba mà không cần password. Đăng nhập với tài khoản do bạn khởi tạo ví dụ để đăng nhập với tài khoản đã được khởi tạo như trong bài viết tạo mới schema trong oracle là sample_schema/oracle_pass bạn gõ sqlplus, sau đó điền sample_schema vào mục user-name và oracle_pass vào mục password. Bạn sẽ đăng nhập thành công như hình vẽ. ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 73 Chúc các bạn sẽ thực hiện các tác vụ trong Oracle thật nhanh chóng với danh mục các câu lệnh hữu ích trên. C. Khắc phục một số lỗi cơ bản trong Oracle 1) Khắc phục lỗi ORA-28056: Writing audit records to Windows Event Log failed Nếu bạn login vào SQL Plus với quyền sysdba và gặp phải lỗi ORA-28056: Writing audit records to Windows Event Log failed như mô tả như hình dưới. ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 74 Thì nguyên nhân của lỗi này là do Windows Event Viewer Log trên hệ điều hành Windows của bạn đã bị đầy và không thể ghi thêm được file log nữa. Để khắc phục lỗi này bạn thực hiện theo các bước sau. Bạn truy cập vào Control Panel của Windows, sau đó chọn Administrative Tools. Cửa sổ Administrative Tools hiện ra bạn chọn Event Viewer. ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 75 Cửa sổ Event Viewer hiện ra bạn chọn mục Application và thấy có rất nhiều các event đã được log lại với Source = Oracle.orcl trong khung cửa sổ Application (trường hợp của tôi là 943 events) – và đây là nguyên nhân gây ra lỗi ORA-28056 ở trên, bây giờ bạn sẽ xóa hết các events này đi. Bạn nhấn chuột phải vào mục Application trong cửa sổ Event Viewer và chọn Clear All Events. ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 76 Một hộp thoại hiện ra hỏi bạn có muốn lưu các events này trước khi xóa không, bạn chọn No. Sau khi xóa xong các events trong mục Event Viewer | Application bạn đã khắc phục thành công lỗi ORA:28056 và có thể đăng nhập vào SQL Plus với quyền sysdba như bình thường, nếu sau khi đăng nhập vào Oracle thông báo Connected to an idle instance thì bạn dùng lệnh startup để khởi động Oracle instance lên và làm việc bình thường. ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 77 2) Khắc phục lỗi ORA-39213 – Metadata processing is not available Khi bạn thực hiện export dữ liệu trong Oracle với câu lệnh expdp (VD: expdp sys/pass schema=sample_schema dumpfile = sample_dump.dmp) và gặp phải lỗi sau: ORA-39213 - Metadata processing is not available Nguyên nhân Nguyên nhân gây ra lỗi ORA-39213 là do Oracle XSL stylesheets chưa được thiết lập đúng (có thể do XSL stylesheets chưa được load, hoặc chưa được chuyển sang đúng kiểu Character Set của database hiện tại (lỗi này thường gặp sau khi dùng câu lệnh ALTER DATABASE để thay đổi Character Set cho Oracle Database). Việc này dẫn tới file dump của bạn (VD: sample_dump.dmp) không thể sử dụng các hàm Metadata API khi export dữ liệu. Khắc phục Để khắc phục lỗi ORA-39213 bạn truy cập vào Oracle SQL Plus với quyền sysdba bằng dòng lệnh: ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 78 sqlplus “/as sysdba” Sau khi đã đăng nhập với quyền sysdba bạn thực hiện câu lệnh sau trong cửa sổ SQL Plus: SQL> execute dbms_metadata_util.load_stylesheets Câu lệnh trên sẽ thực hiện load lại file XLS stylesheets vào database của bạn, sau đó bạn có thể thực hiện thao tác export data trong Oracle như bình thường. 3) Khắc phục lỗi “Some required prerequisite checks have failed” khi cài đặt Oracle Client 11g trênn Windows 7 Oracle Client 11g Release 2 (Oracle Client 11g) là phần mềm được cài đặt tại máy trạm (máy client) để tạo kết nối tới máy chủ Oracle server giúp thực hiện thao tác liên quan tới các bản ghi trong cơ sở dữ liệu. Oracle Client 11g có thể được cài đặt trên nhiều nền tảng khác nhau như Windows, Linux, Solaris…. Hiện tại khi bạn tiến hành cài đặt Oracle Client 11g trên Windows 7 tới màn hình Product-Specific Prerequisite Checks thì sẽ gặp phải lỗi sau: Some required prerequisite checks have failed. Please make sure the system meets all the requirements before install can proceed. Lý do quá trình cài đặt bị dừng lại tại bước trên và thông báo lỗi hiển thị là do hệ điều hành Windows 7 của bạn không đáp ứng đủ tiêu chuẩn mà Oracle yêu cầu khi cài đặt Oracle Client 11g. Để khắc phục lỗi này bạn hãy tìm tới file refhost.xml được lưu trong thư mục [bô cài đặt Oracle 11g]\client\stage\prereq\client, trong trường hợp của tôi là theo đường dẫn sau:C:\Users\trongnguyen\Documents\win32_11gR1_client\client\stage\prereq\clie nt. Bạn mở file ra và thêm và dòng định nghĩa cho Windows 7 như hướng dẫn bên dưới: ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 79 Sau đó bạn save file refhost.xml lại và đã có thể bắt đầu cài đặt Oracle Client 11g Release 2 trên Windows 7như bình thường. ORACE THỰC HÀNH – những tác vụ cơ bản 5/14/2011 80 Mọi ý kiến đóng góp cho cuốn Ebook ORACLE Thực hành – Những tác vụ cơ bản xin bạn vui lòng gửi về địa chỉ: Tác giả: Nguyễn Hữu Trọng Email: trong@nguyenhuutrong.com Tôi sẽ cố gắng phúc đáp bạn trong thời gian sớm nhất. Xin cảm ơn bạn đã dành thời gian cho cuốn Ebook và chúc bạn gặt hái được nhiều thành công trong công việc. Hà Nội – 05/2011.
File đính kèm:
- Oracle thực hành những tác vụ cơ bản.pdf