0

Apache Derby Bài 25: Kết nối Apache Derby bằng các công cụ GUI: DBeaver, DataGrip, IntelliJ IDEA

1. Yêu cầu bắt buộc: Chế độ Network Server

Để sử dụng các công cụ giao diện đồ họa (GUI) an toàn và hiệu quả, bạn bắt buộc phải khởi động Derby ở chế độ Network Server (lắng nghe cổng 1527) như đã học ở Bài 21.

Nếu bạn cấu hình GUI kết nối theo chế độ Embedded (jdbc:derby:TÊN_DB), công cụ đồ họa sẽ tự động sinh ra tệp khóa db.lck và chiếm hoàn toàn quyền điều khiển cơ sở dữ liệu. Ứng dụng Java của bạn sẽ lập tức bị chặn với lỗi XJ040 (Database Locked) do không thể mở cùng một database từ hai tiến trình JVM độc lập.

2. Kết nối bằng DBeaver

DBeaver là công cụ quản trị cơ sở dữ liệu mã nguồn mở hỗ trợ kết nối trực tiếp đến Apache Derby mà không cần cấu hình phức tạp.

  1. Nhấn nút New Database Connection (biểu tượng phích cắm) ở góc trên bên trái màn hình.

  2. Gõ "Derby" vào ô tìm kiếm và chọn Derby (Network). Tuyệt đối không chọn bản Embedded.

  3. Tại tab Main, điền các thông tin kết nối:

    • Host: localhost (hoặc IP của máy chủ)

    • Port: 1527

    • Database: Tên cơ sở dữ liệu hoặc đường dẫn vật lý (ví dụ: demo_api_db)

  4. Nhấn Test Connection. Ở lần chạy đầu tiên, DBeaver sẽ hiện hộp thoại yêu cầu tải tệp derbyclient.jar. Nhấn Download để tự động nạp thư viện và hoàn tất.

3. Kết nối bằng DataGrip hoặc IntelliJ IDEA Ultimate

Hệ sinh thái phần mềm của JetBrains sử dụng chung một lõi công cụ cơ sở dữ liệu, cho phép bạn quản trị trực tiếp từ bên trong IDE.

  1. Mở tab Database (thường nằm ở cạnh phải màn hình IntelliJ/DataGrip).

  2. Nhấn biểu tượng dấu (+) →\rightarrow Data Source →\rightarrow Apache Derby.

  3. Trong cửa sổ cấu hình kết nối:

    • Connection Type: Chuyển sang tùy chọn Remote (đại diện cho cấu trúc Network Server).

    • Host: localhost

    • Port: 1527

    • Database: Nhập tên cơ sở dữ liệu.

  4. Nếu thấy thông báo "Missing driver files" màu vàng ở dưới cùng, hãy nhấp vào nút Download. IDE sẽ kéo thư viện JDBC chuẩn về máy tính.

  5. Nhấn Test Connection và chọn OK để lưu phiên làm việc.

4. Khắc phục lỗi kết nối đồ họa phổ biến

  • Connection refused: Lỗi này báo hiệu máy chủ Derby chưa được bật hoặc bạn nhập sai cấu hình cổng. Bạn cần mở Terminal và chạy lệnh startNetworkServer trước khi kết nối GUI.

  • XJ040 (Database is locked): Bạn đã chọn nhầm loại kết nối Embedded trong lúc cấu hình. Hãy tắt hẳn phần mềm DBeaver/DataGrip, xóa tệp db.lck trong thư mục database bằng tay, sau đó cấu hình lại theo chuẩn Network Mode.

  • Không thấy dữ liệu hiển thị (Empty Schema): Derby tự động gom các bảng mới tạo vào một schema (lược đồ) mặc định có tên là APP hoặc tên tài khoản người dùng hệ điều hành của bạn. Hãy mở rộng schema tương ứng trong cây thư mục bên trái của GUI để quan sát các bảng dữ liệu thực tế.

Sử dụng môi trường đồ họa giúp bạn thiết kế schema trực quan, nhập liệu nhanh chóng và kiểm tra các câu truy vấn phức tạp trước khi đưa vào mã nguồn Java.


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí