Skip to Main Content
☕ Ủng hộ cafe

☕ Mời mình một ly cafe

Nếu tài liệu này hữu ích, bạn có thể ủng hộ mình một ly cafe để mình có thêm động lực viết tiếp ❤️

QR Support
Ngân hàng: VC Bank
Chủ tài khoản: DO KHAC LAM
Số tài khoản: 7906077097
Nội dung: Ung ho Dokhala
Cảm ơn bạn đã ủng hộ Dokhala 🙏
💬 Liên hệ

💬 Kết nối với mình

Bạn cần hỏi thêm về Oracle APEX, góp ý nội dung, hoặc muốn trao đổi dự án? Có thể nhắn mình qua các kênh dưới đây.

← Quay lại bài viết

Cài đặt Oracle APEX 24.2 trên Windows với ORDS

Hướng dẫn cài đặt Oracle APEX 24.2 trên Windows trong môi trường CDB/PDB, cấu hình ORDS, copy APEX images, tạo ADMIN user và truy cập APEX từ trình duyệt.

Oracle APEX là nền tảng low-code chạy trực tiếp trên Oracle Database, cho phép xây dựng ứng dụng web nhanh chóng bằng SQL, PL/SQL và các thành phần khai báo. Nếu bạn muốn học APEX nghiêm túc trên máy cá nhân, việc tự cài một môi trường local trên Windows là rất hữu ích.

Bài viết này hướng dẫn cách cài đặt Oracle APEX 24.2 trên Windows, kết hợp với ORDS để truy cập APEX từ trình duyệt. Nội dung được trình bày theo hướng dễ hiểu cho người mới học Oracle APEX, tập trung vào các bước quan trọng như cài APEX, cấu hình ORDS, copy images, tạo ADMIN user và truy cập môi trường APEX local.

Kiến trúc trong bài sử dụng Oracle Database dạng CDB/PDB. APEX được cài ở CDB root để trở thành common component, sau đó mỗi PDB cần được cấu hình để có thể đăng nhập và sử dụng APEX.

CDB, PDB và vì sao nên hiểu trước khi cài APEX?

Từ Oracle Database 12c trở đi, Oracle giới thiệu kiến trúc multitenant gồm CDB và PDB. CDB là Container Database, còn PDB là Pluggable Database. Một CDB có thể chứa nhiều PDB.

Khi cài APEX trong CDB root, APEX có thể được dùng chung cho các PDB bên dưới. Cách này giúp việc bảo trì và nâng cấp APEX thuận tiện hơn, vì bạn không cần cài riêng từng bản APEX cho từng PDB.

Tuy nhiên, dù APEX được cài ở CDB, bạn vẫn cần cấu hình quyền truy cập trong từng PDB. Đặc biệt, bạn cần chạy script đổi mật khẩu ADMIN trong PDB mà bạn muốn sử dụng.

Yêu cầu trước khi bắt đầu

Trước khi cài, bạn cần chuẩn bị:

  • Oracle Database 19c hoặc mới hơn, có bật multitenant.
  • Một PDB đang open, ví dụ FREEPDB1 hoặc tên PDB của bạn.
  • Oracle APEX 24.2 đã tải về và giải nén.
  • Oracle REST Data Services, thường gọi là ORDS.
  • Java 11 hoặc mới hơn.
  • SQL*Plus hoặc SQLcl để kết nối database.
  • Command Prompt chạy với quyền phù hợp trên Windows.

Trong ví dụ này, giả sử APEX được giải nén tại:

C:\apex_24.2\apex

Và ORDS sẽ được đặt tại:

C:\ords_24.2

Còn thư mục cấu hình ORDS là:

C:\ords_config

Bước 1: Cài APEX trong CDB root

Mở Command Prompt, chuyển vào thư mục APEX:

cd C:\apex_24.2\apex

Kết nối vào database bằng SYSDBA:

sqlplus / as sysdba

Đảm bảo bạn đang ở CDB root. Sau đó chạy script cài APEX đầy đủ:

@apexins.sql SYSAUX SYSAUX TEMP /i/

Trong đó:

  • SYSAUX là tablespace lưu metadata của APEX.
  • TEMP là temporary tablespace.
  • /i/ là virtual path dùng cho APEX images.

Nếu bạn chỉ muốn runtime environment, không cần App Builder, có thể dùng script runtime. Nhưng với môi trường học tập và phát triển ứng dụng, bạn nên cài bản đầy đủ bằng apexins.sql.

Bước 2: Đặt mật khẩu ADMIN cho APEX

Sau khi cài APEX, chạy script đổi mật khẩu:

@apxchpwd.sql

Script sẽ yêu cầu nhập thông tin tài khoản ADMIN, email và mật khẩu. Mật khẩu này dùng để đăng nhập vào APEX Administration Services.

Ví dụ:

Username: ADMIN
Email: admin@example.com
Password: MyStrongPassword123!

Bạn nên dùng mật khẩu mạnh, đặc biệt nếu môi trường này có thể truy cập từ mạng nội bộ.

Bước 3: Unlock APEX_PUBLIC_USER nếu cần

Một số môi trường cần unlock user APEX_PUBLIC_USER để ORDS có thể giao tiếp với APEX. Bạn có thể chạy:

alter user APEX_PUBLIC_USER account unlock;

Nếu user đang bị khóa hoặc cấu hình sai, ORDS có thể không phục vụ được APEX đúng cách.

Bước 4: Validate cài đặt APEX

Sau khi cài, nên kiểm tra APEX đã được cài đúng chưa:

set serveroutput on

begin
  sys.validate_apex;
end;
/

Nếu không có lỗi nghiêm trọng, bạn có thể tiếp tục cấu hình ORDS.

Bước 5: Tạo thư mục cho ORDS

Thoát khỏi SQL*Plus nếu cần, quay lại Command Prompt và tạo các thư mục:

mkdir C:\ords_24.2
mkdir C:\ords_config

Thư mục C:\ords_24.2 dùng để chứa file ORDS đã giải nén. Thư mục C:\ords_config dùng để lưu cấu hình ORDS.

Bước 6: Giải nén ORDS

Tải ORDS từ trang Oracle, sau đó giải nén vào:

C:\ords_24.2

Sau khi giải nén, bạn sẽ có cấu trúc tương tự:

C:\ords_24.2\
  bin\
  lib\
  ords.war

Trong các phiên bản ORDS mới, bạn thường chạy lệnh từ thư mục bin.

Bước 7: Thiết lập ORDS_CONFIG

ORDS cần một nơi để lưu cấu hình lâu dài. Bạn có thể set biến môi trường tạm thời:

set ORDS_CONFIG=C:\ords_config

Nếu muốn dùng lâu dài, nên thêm biến này vào Environment Variables của Windows.

Bước 8: Copy APEX images

APEX cần thư mục images để giao diện hiển thị đúng CSS, JavaScript, icon và các tài nguyên tĩnh. Vì khi cài APEX bạn dùng virtual path /i/, nên cần copy thư mục images vào doc root của ORDS.

xcopy C:\apex_24.2\apex\images C:\ords_config\global\doc_root\i /E /I

Nếu bước này bị thiếu, APEX có thể vẫn mở được nhưng giao diện sẽ bị lỗi CSS, mất icon hoặc hiển thị rất xấu.

Bước 9: Cài và cấu hình ORDS

Chuyển vào thư mục ORDS bin:

cd C:\ords_24.2\bin

Chạy lệnh cài ORDS:

ords --config C:\ords_config install

ORDS sẽ hỏi một số thông tin như:

  • Kiểu kết nối database.
  • Service name của PDB, ví dụ FREEPDB1.
  • Thông tin SYSDBA.
  • Các schema metadata của ORDS.

Điểm quan trọng là ORDS nên trỏ đến PDB bạn muốn chạy APEX, không nên trỏ nhầm vào CDB root. Nếu cấu hình sai, bạn có thể gặp lỗi đăng nhập hoặc không vào được APEX trong PDB.

Bước 10: Chạy apxchpwd.sql trong PDB

Dù APEX được cài ở CDB root, bạn vẫn cần cấu hình ADMIN user trong PDB cần dùng. Kết nối lại bằng SYSDBA:

sqlplus / as sysdba

Chuyển sang PDB:

alter session set container = FREEPDB1;

Lưu ý thay FREEPDB1 bằng tên PDB thật của bạn.

Sau đó chạy:

@apxchpwd.sql

Nhập lại thông tin ADMIN và mật khẩu cho APEX trong PDB này. Đây là bước rất dễ bị bỏ qua. Nếu bạn không chạy trong PDB, có thể sẽ không đăng nhập được vào APEX đúng môi trường.

Nếu cần, unlock lại:

alter user APEX_PUBLIC_USER account unlock;

Bước 11: Start ORDS standalone

Sau khi ORDS đã cài và cấu hình xong, chạy:

cd C:\ords_24.2\bin
ords --config C:\ords_config serve

Mặc định ORDS sẽ chạy ở port 8080. Mở trình duyệt và truy cập:

http://localhost:8080/ords/

Nếu mọi thứ đúng, bạn sẽ thấy trang ORDS/APEX landing page hoặc màn hình đăng nhập APEX.

Bước 12: Đăng nhập APEX lần đầu

Truy cập:

http://localhost:8080/ords/

Thông tin đăng nhập thường là:

  • Workspace: INTERNAL
  • Username: ADMIN
  • Password: mật khẩu bạn đặt khi chạy apxchpwd.sql

Sau khi đăng nhập vào Administration Services, bạn có thể tạo workspace mới, liên kết workspace với schema, tạo developer user và bắt đầu build ứng dụng.

Các lỗi thường gặp

APEX mở được nhưng giao diện bị lỗi CSS hoặc mất icon

Nguyên nhân thường là thư mục images chưa được copy đúng vào:

C:\ords_config\global\doc_root\i

Kiểm tra lại bước copy images và đảm bảo virtual path /i/ khớp với lúc cài APEX.

Không đăng nhập được APEX trong PDB

Nguyên nhân thường là bạn chưa chạy:

@apxchpwd.sql

trong đúng PDB. Hãy kết nối SYSDBA, chuyển container sang PDB, rồi chạy lại script.

ORDS trỏ nhầm CDB root

Nếu ORDS được cấu hình trỏ vào CDB root thay vì PDB, APEX có thể không hoạt động như mong muốn. Khi cài ORDS, hãy dùng service name của PDB, ví dụ FREEPDB1.

Port 8080 đã bị dùng

Nếu port 8080 đã có ứng dụng khác sử dụng, ORDS standalone có thể không start được. Bạn có thể đổi port trong cấu hình ORDS hoặc tắt ứng dụng đang chiếm port.

Nên dùng môi trường local này để làm gì?

Môi trường APEX local trên Windows rất phù hợp để:

  • Học Oracle APEX từ cơ bản đến nâng cao.
  • Thử nghiệm page, region, item, dynamic action và process.
  • Test PL/SQL package trước khi deploy.
  • Thử cấu hình ORDS và REST APIs.
  • Làm demo hoặc proof of concept.

Tuy nhiên, nếu đưa ra production, bạn cần xem xét thêm các phần như HTTPS, reverse proxy, cấu hình bảo mật, backup, monitoring, service chạy nền và hardening môi trường.

Kết luận

Cài Oracle APEX 24.2 trên Windows với ORDS là một bước rất tốt nếu bạn muốn chủ động học và thử nghiệm APEX. Quy trình chính gồm: cài APEX trong CDB, cấu hình ADMIN, copy images, cài ORDS vào PDB, chạy apxchpwd.sql trong PDB và start ORDS standalone.

Khi hiểu rõ vai trò của CDB, PDB, ORDS và thư mục images, bạn sẽ dễ xử lý lỗi hơn và có nền tảng tốt để triển khai APEX trong các môi trường phức tạp hơn.