Khái niệm
Cơ sở dữ liệu là một tập hợp dữ liệu có tổ chức, liên quan đến nhau và thường được lưu trữ, truy cập điện tử qua hệ thống máy tính Khi cơ sở dữ liệu trở nên phức tạp, chúng thường được phát triển thông qua các kỹ thuật thiết kế và mô hình hóa chính thức.
Mô hình cơ sở dữ liệu
Mô hình dữ liệu là một khuôn dạng giúp người dùng hiểu dữ liệu thông qua cấu trúc thuật ngữ, được gọi là lược đồ (scheme) Nó cung cấp thông tin về cấu trúc của cơ sở dữ liệu, bao gồm hai thành phần chính.
Hệ thống ký hiệu để mô tả dữ liệu.
Tập hợp các phép toán thao tác trên dữ liệu đó.
Mô hình phân cấp (Hierarchical model)
Mô hình phân cấp, ra đời vào những năm 60, tổ chức dữ liệu theo cấu trúc cây, trong đó các nút (node) đại diện cho tập hợp thực thể, và các cành (edge) thể hiện mối quan hệ cứng nhắc giữa các nút.
Mô hình dữ liệu phân cấp là một cấu trúc tổ chức dữ liệu theo dạng cây (top-down), trong đó mỗi nút con chỉ có một nút cha, đảm bảo chỉ có một đường truy cập tới dữ liệu Tập dữ liệu được sắp xếp theo mô hình này được gọi là cơ sở dữ liệu phân cấp (CSDL phân cấp).
Ví dụ mô hình phân cấp trong quản lý nhân sự của một công ty. Ưu điểm:
Dễ xây dựng và thao tác.
Tương thích với các lĩnh vực tổ chức phân cấp (ví dụ: tổ chức nhân sự trong các đơn vị, ).
Ngôn ngữ thao tác đơn giản (duyệt cây).
Sự lặp lại của các kiểu bản ghi gây ra dư thừa dữ liệu và dữ liệu không nhất quán.
Giải pháp là xây dựng các bản ghi ảo.
Hạn chế trong biểu diễn ngữ nghĩa của các móc nối giữa các bản ghi (chỉ cho phép quan hệ 1-n).
Mô hình mạng (Network model)
Mô hình mạng, phổ biến từ cuối những năm 60 và được định nghĩa lại vào năm 1971, tổ chức dữ liệu dưới dạng đồ thị có hướng Trong mô hình này, các đỉnh đại diện cho các thực thể, trong khi các cung thể hiện quan hệ giữa các đỉnh, cho phép một kiểu bản ghi liên kết với nhiều kiểu bản ghi khác.
Một con có thể có nhiều cha, điều này dẫn đến việc có nhiều cách truy cập dữ liệu cho một mục tiêu nhất định Dữ liệu được tổ chức theo cấu trúc của mô hình dữ liệu mạng, được gọi là cơ sở dữ liệu mạng.
Ví dụ dữ liệu của một công ty có thể tổ chức theo mô hình mạng như sau. Ưu điểm:
Có thể biểu diễn các ngữ nghĩa đa dạng với kiểu bản ghi và kiểu móc nối
Truy vấn thông qua phép duyệt đồ thị (navigation)
Số lượng các con trỏ lớn.
Hạn chế trong biểu diễn ngữ nghĩa của các móc nối giữa các bản ghi.
Mô hình dữ liệu quan hệ (Relational model)
Mô hình dữ liệu quan hệ, được E.F Codd giới thiệu vào đầu những năm 70, dựa trên lý thuyết tập hợp và đại số quan hệ Với tính chặt chẽ của toán học trong lý thuyết tập hợp, mô hình này mô tả dữ liệu một cách rõ ràng và linh hoạt, trở thành mô hình phổ biến nhất hiện nay Hầu hết các hệ quản trị cơ sở dữ liệu (DBMS) đều tổ chức dữ liệu theo mô hình này, trong đó dữ liệu được sắp xếp dưới dạng bảng và các thao tác trên dữ liệu dựa vào lý thuyết tập hợp Cơ sở dữ liệu được tổ chức theo cấu trúc của mô hình dữ liệu quan hệ được gọi là cơ sở dữ liệu quan hệ.
Ví dụ dưới đây mô tả dữ liệu được tổ chức theo kiểu quan hệ: Ưu điểm:
Dựa trên lý thuyết tập hợp
Khả năng tối ưu hoá các xử lý phong phú
Hạn chế trong biểu diễn ngữ nghĩa
Cấu trúc dữ liệu không linh hoạt
Mô hình dữ liệu hướng đối tượng (Object Oriented model) là một phương pháp tổ chức dữ liệu, trong đó các thuộc tính và phương thức được đóng gói trong các đối tượng Cấu trúc này tạo ra cơ sở dữ liệu hướng đối tượng (CSDL hướng đối tượng), giúp quản lý và thao tác dữ liệu một cách hiệu quả Các ưu điểm của mô hình này bao gồm tính linh hoạt, khả năng tái sử dụng mã nguồn và dễ dàng mở rộng hệ thống.
Dễ dàng biểu diễn cái mà con người nhận thức từ thế giới thực.
Biểu diễn ngữ nghĩa phong phú của các thực thể và quan hệ giữa các thực thể.
Không dễ dàng ánh xạ vào những cấu trúc lưu trữ trên máy tính
Ưu, nhược điểm của CSDL
Ưu điểm của cơ sở dữ liệu
Giảm sự trùng lặp thông tin xuống mức tối thiểu nhất Do đó đảm bảo thông tin có tính nhất quán và toàn vẹn dữ liệu.
Đảm bảo dữ liệu có thể được truy xuất theo nhiều cách khác nhau.
Nhiều người có thể sử dụng chung một cơ sở dữ liệu.
Nhược điểm của cơ sở dữ liệu
Tính chủ quyền của dữ liệu
Tính bảo mật và quyền khai thác thông tin của người sử dụng
Cần đảm bảo an toàn dữ liệu khi có sự cố
Hệ quản trị Cơ sở dữ liệu
Định nghĩa hệ quản trị
Hệ quản trị cơ sở dữ liệu (DBMS) là phần mềm cho phép xây dựng và quản lý cơ sở dữ liệu, đồng thời kiểm soát tất cả các truy cập vào dữ liệu trong hệ thống.
Trên thị trường phần mềm tại Việt Nam, có nhiều hệ quản trị cơ sở dữ liệu nổi bật như Microsoft Access, Foxpro, DB2, SQL Server và Oracle.
Hệ quản trị cơ sở dữ liệu quan hệ (Relation Database Management System - RDBMS) là một hệ quản trị cơ sở dữ liệu theo mô hình quan hệ.
Đặc điểm hệ quản trị CSDL
Để hệ thống hoạt động hiệu quả, hệ quản trị cơ sở dữ liệu (CSDL) cần tra cứu và tìm kiếm dữ liệu một cách hiệu quả Điều này yêu cầu thiết kế các cấu trúc dữ liệu phức tạp để biểu diễn dữ liệu trong CSDL Các nhà phát triển thường sử dụng nhiều mức độ trừu tượng để che giấu sự phức tạp này, nhằm đơn giản hóa các tương tác của người dùng với hệ thống.
Mức vật lý là cấp độ thấp nhất của sự trừu tượng, mô tả cách dữ liệu được lưu trữ thực tế Tại đây, các cấu trúc dữ liệu phức tạp ở mức thấp được trình bày một cách chi tiết.
Mức logic của sự trừu tượng hóa trong cơ sở dữ liệu mô tả các loại dữ liệu được lưu trữ và các mối quan hệ giữa chúng Người quản trị cơ sở dữ liệu có trách nhiệm xác định thông tin nào sẽ được lưu trữ, đảm bảo tính chính xác và tính hợp lý của dữ liệu trong hệ thống.
Mức khung nhìn: Mức cao nhất của sự trừu tượng mô tả chỉ một phần của toàn bộ
Cơ sở dữ liệu (CSDL) thường sử dụng các cấu trúc đơn giản ở mức logic, nhưng vẫn tồn tại một số phức tạp do kích thước lớn Người dùng chỉ cần truy cập một phần của CSDL, do đó, sự tương tác với hệ thống được đơn giản hóa và mức độ trừu tượng được xác định Hệ thống có khả năng cung cấp nhiều khung nhìn khác nhau cho cùng một cơ sở dữ liệu.
Bộ xử lý câu hỏi có nhiệm vụ chuyển đổi các truy vấn hoặc thao tác cơ sở dữ liệu (CSDL) từ các mức cao thành một chuỗi yêu cầu cụ thể đối với dữ liệu được lưu trữ trong CSDL.
Phần khó khăn nhất trong việc xử lý câu hỏi là tối ưu hóa câu hỏi, tức là lựa chọn kế hoạch tối ưu cho hệ thống lưu trữ nhằm trả lời truy vấn một cách nhanh chóng nhất.
Trong cơ sở dữ liệu, một giao dịch được định nghĩa là một tập hợp các thao tác mà được xử lý như một đơn vị không thể tách rời, đảm bảo rằng hoặc tất cả các thao tác được thực hiện hoặc không có thao tác nào được thực hiện Điều này giúp duy trì tính nhất quán của cơ sở dữ liệu, vì các hệ quản trị cơ sở dữ liệu thường cho phép người dùng thực hiện một hoặc nhiều nhóm thao tác truy vấn hoặc thay đổi dữ liệu trong một giao dịch duy nhất.
Các cơ sở dữ liệu (CSDL) thường yêu cầu một lượng lớn không gian lưu trữ Vì bộ nhớ chính của máy tính không đủ khả năng chứa đựng khối lượng thông tin này, nên các dữ liệu được lưu trữ trên các thiết bị nhớ ngoài như đĩa cứng và đĩa mềm.
Khi xử lý dữ liệu, việc di chuyển từ đĩa từ vào bộ nhớ chính diễn ra chậm hơn so với tốc độ xử lý của bộ nhớ trung tâm Do đó, các hệ thống cơ sở dữ liệu cần tổ chức dữ liệu vật lý một cách hiệu quả để giảm thiểu số lần yêu cầu chuyển dữ liệu giữa đĩa từ và bộ nhớ chính.
Kiến trúc của một hệ quản trị CSDL
Chúng ta sẽ phác thảo kiến trúc và thấy cách thức của một hệ quản trị CSDL điển hình Ta có sơ đồ kiến trúc:
Dữ liệu và siêu dữ liệu là hai thành phần quan trọng trong kiến trúc lưu trữ Thiết bị nhớ ngoài không chỉ lưu trữ dữ liệu trong cơ sở dữ liệu (CSDL) mà còn chứa các siêu dữ liệu, tức là thông tin cấu trúc liên quan đến CSDL.
Bộ quản lý lưu trữ có nhiệm vụ truy xuất thông tin từ các thiết bị lưu trữ dữ liệu và điều chỉnh những thông tin này theo yêu cầu từ các cấp cao hơn trong hệ thống.
Bộ xử lý câu hỏi điều khiển không chỉ các câu hỏi mà còn cả yêu cầu thay đổi dữ liệu và siêu dữ liệu Nhiệm vụ chính của nó là xác định phương pháp tối ưu để thực hiện thao tác yêu cầu và phát lệnh cho bộ quản lý lưu trữ nhằm thực thi thao tác đó.
Bộ quản trị giao dịch đóng vai trò quan trọng trong việc duy trì tính toàn vẹn của hệ thống Nó đảm bảo rằng các thao tác thực hiện đồng thời không gây cản trở lẫn nhau và hệ thống vẫn bảo toàn dữ liệu ngay cả khi xảy ra lỗi.
Chức năng của hệ quản trị cơ sở dữ liệu
Hệ quản trị cơ sở dữ liệu (QTCSDL) cần tạo ra một môi trường thuận lợi cho người dùng, cho phép họ dễ dàng khai báo kiểu dữ liệu, cấu trúc dữ liệu thể hiện thông tin và các ràng buộc liên quan đến dữ liệu.
Mỗi hệ QTCSDL cung cấp cho người dùng một ngôn ngữ định nghĩa dữ liệu để người dùng có thể tạo lập CSDL.
2.4.2 Cung cấp môi trường cập nhật và khai thác dữ liệu
Ngôn ngữ thao tác dữ liệu là ngôn ngữ để người dùng diễn tả yêu cầu cập nhật hay khai thác thông tin, các thao tác gồm:
Cập nhật (nhập, sửa, xoá dữ liệu);
Khai thác (sắp xếp, tìm kiếm, kết xuất báo cáo, …)
Ngôn ngữ CSDL phổ biến là SQL (Structured Query Language)
2.4.3 Cung cấp công cụ kiểm soát, điều khiển truy cập vào cơ sở dữ liệu
Hệ QTCSDL phải có các bộ chương trình thực hiện nhiệm vụ sau:
Phát hiện và ngăn chặn truy cập không được phép, đáp ứng yêu cầu an toàn và bảo mật thông tin.
Duy trì tính nhất quán dữ liệu
Tổ chức và điều khiển các truy cập đồng thời
Khôi phục CSDL khi có sự cố phần cứng hay phần mềm
Quản lý các mô tả dữ liệu
Hoạt động của một hệ quản trị cơ sở dữ liệu
Mỗi hệ QTCSDL gồm nhiều thành phần (mođun), hai thành phần chính là bộ xử lý truy vấn (xử lý yêu cầu) và bộ quản lý dữ liệu
Hệ QTCSDL phải có các tương tác với hệ điều hành
Khi người dùng đưa ra yêu cầu, hệ quản trị cơ sở dữ liệu (QTCSDL) sẽ gửi yêu cầu đến thành phần chịu trách nhiệm thực hiện, đồng thời yêu cầu hệ điều hành tìm kiếm các tệp dữ liệu cần thiết.
Các tệp tìm thấy được chuyển về hệ QTCSDL xử lí và kết quả được trả cho người dùng.
Các bước xây dựng hệ quản trị cơ sở dữ liệu
Tìm hiểu yêu cầu của công tác quản lý.
Xác định dữ liệu cần lưu trữ, phân tích mối liên hệ dữ liệu.
Phân tích các chức năng cần có của hệ thống, đáp ứng các yêu cầu đạt ra.
Xác định khả năng phần cứng, phần mềm có thể khai thác, sử dụng.
Thiết kế cơ sở dữ liệu.
Lựa chọn hệ QTCSDL triển khai.
Xây dựng hệ thống chương trình ứng dụng.
Nhập dữ liệu cho CSDL
Tiến hành chạy thử hệ thống để xác định xem nó có đáp ứng đầy đủ các yêu cầu hay không Nếu hệ thống hoạt động ổn định, có thể đưa vào sử dụng Ngược lại, nếu phát hiện lỗi, cần rà soát lại tất cả các bước đã thực hiện trước đó để xác định nguyên nhân và khắc phục kịp thời.
Hệ quản trị CSDL Oracle
Khái niệm
Cơ sở dữ liệu Oracle (Oracle Database) là một hệ thống cơ sở dữ liệu quan hệ, nơi dữ liệu được tổ chức trong các bảng hai chiều với hàng và cột, giúp người dùng lưu trữ, cập nhật và truy xuất dữ liệu một cách hiệu quả.
Cơ sở dữ liệu Oracle bao gồm các cấu trúc vật lý và luận lý, phục vụ cho việc lưu trữ thông tin hệ thống, thông tin người dùng và thông tin điều khiển Sự tách biệt giữa hai loại cấu trúc này cho phép quản lý lưu trữ dữ liệu vật lý mà không làm ảnh hưởng đến việc truy xuất các cấu trúc luận lý.
Oracle cung cấp một phần mềm dùng để quản lý cơ sở dữ liệu này, gọi là Oracle Database Server
Hệ Cơ sở dữ liệu Oracle (Oracle Database System) bao gồm Oracle Database Server và Oracle Database, thường được gọi chung là Hệ Cơ sở dữ liệu Oracle.
“Oracle Database” để chỉ Oracle Database System.
Kiến trúc cơ bản của Oracle
Oracle là một hệ thống quản trị cơ sở dữ liệu sử dụng nền tảng SQL, một ngôn ngữ lập trình phổ biến được nhiều lập trình viên ưa chuộng SQL giúp chuẩn hóa và nâng cao độ chính xác trong việc quản lý dữ liệu, đồng thời được nhiều tổ chức sử dụng để quản lý và truy vấn dữ liệu trong quá trình lưu trữ.
Oracle liên kết chặt chẽ với PL/SQL, một phần mềm hỗ trợ cung cấp các extension cho hệ thống Ngoài ra, Oracle cũng hỗ trợ lập trình qua Java, mở rộng khả năng phát triển ứng dụng.
Oracle sử dụng máy chủ cơ sở dữ liệu để lưu trữ và quản lý dữ liệu, với khả năng có một hoặc nhiều database tùy thuộc vào từng máy chủ Database không chỉ lưu trữ tệp dữ liệu mà còn kết hợp giữa logic và vật lý, trong đó cấu trúc vật lý bao gồm các tệp dữ liệu chứa metadata và tệp nhật ký online Metadata đóng vai trò quan trọng trong việc điều khiển dữ liệu hiệu quả.
Cấu trúc Logic gồm các khối dữ liệu, các nhóm dữ liệu như Extents và các phần mở rộng phân đoạn, không gian bảng….
Tính năng tiêu biểu của Oracle Database
Oracle được thiết kế để đảm bảo đáp ứng đầy đủ các yêu cầu của hệ thống quản lý thông tin, thông qua một số cơ chế như:
Tối đa hóa hệ thống dữ liệu trong trường hợp có nhiều người sử dụng đồng thời.
Giúp việc sửa đổi và đọc dữ liệu trở nên nhất quán hơn bằng cách ngăn chặn việc thay đổi thông tin khi có người đang xem Chỉ khi người dùng kết thúc việc xem dữ liệu hoặc không còn ai khác đang truy cập thông tin, thì lúc đó thông tin mới có thể được sửa đổi.
Giúp nâng cao hiệu suất bằng việc cho nhiều người cùng sử dụng trên một hệ thống.
3.3.2 Sao lưu và phục hồi csdl (Backup và Recovery)
Trong quá trình sử dụng hệ thống cơ sở dữ liệu, lỗi là điều không thể tránh khỏi, và người dùng có thể phải đối mặt với rủi ro mất dữ liệu Oracle đã cung cấp giải pháp để khắc phục vấn đề này.
Phục hồi cơ sở dữ liệu theo yêu cầu của người sử dụng.
Tùy từng tình huống mà hoạt động khôi phục sẽ linh hoạt hơn
Việc sao lưu, phục hồi dữ liệu sẽ được tích hợp sẵn, ngay cả trong trường hợp người dùng đang làm việc
3.3.3 Bảo mật thông tin Đây là một trong các ưu điểm nổi bật giúp Oracle trở thành hệ thống có doanh số bán hàng cao nhất thị trường
Oracle có tính năng bảo mật thông qua 2 giải pháp bảo vệ tại nguồn đó là:
TDE : mã hóa dữ liệu trong thời gian thực, giúp bảo vệ thông tin nhạy cảm
Data Redaction : giúp mã hóa, che giấu dữ liệu
Oracle cung cấp các giải pháp mã hóa dữ liệu tại nguồn và trong quá trình đăng xuất, đảm bảo an toàn tối đa cho thông tin Hệ thống của Oracle luôn duy trì tính bảo mật, bảo vệ quyền lợi của người dùng một cách hiệu quả.
Oracle cung cấp tính năng bổ sung và trao đổi dữ liệu từ xa, giúp người dùng dễ dàng tích hợp thông tin Hệ thống này đảm bảo rằng tất cả dữ liệu được điều chỉnh sẽ luôn nhất quán.
Oracle cho phép người dùng dễ dàng quản lý thông qua:
Các công cụ quản lý
Tự quản lý cơ sở dữ liệu thông qua các hệ thống
Hỗ trợ lưu trữ tự động
Sử dụng hệ ngôn ngữ SQL plus.
Có sẵn bộ lập trình và quản lý tài nguyên.
THIẾT KẾ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU HỆ THỐNG QUẢN LÝ QUÁN CAFE
Phân tích, thiết kế hệ thống CSDL
1.2 Thiết kế dữ liệu bảng Tài khoản
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
TENTAIKHOAN NVarchar2(100) Tên tài khoản Primary Key TENHIENTHI NVarchar2(100) Tên hiển thị
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
MABILL Number Mã bill Primary Key
MABAN Number Mã bàn Foreign Key
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
MACHITIET Number Mã chi tiết Primary Key
MABILL Number Mã bill Foreign Key
MADOUONG Number Mã đồ uống Foreign Key
Bàn Tên trường Kiểu dữ liệu Mô tả Ràng buộc
MABAN Number Mã bàn Primary Key Đồ uống
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
MADOUONG Number Mã đồ uống Primary Key
TENDOUONG NVarchar2(100) Tên đồ uống
MACATEGORY Number Mã category Foreign Key
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
MACATEGORY Number Mã category Primary Key
Mô hình dữ liệu quan hệ
2.2 Các thực thể tham gia trong bài toán
Thực thể HOADON(NGAYXUAT, NGAYNHAP, MABILL, MABAN, TRANGTHAI, TONGTIEN)
Thực thể CHITIETHOADON (MACHITIET, MASO, MADOUONG, SOLUONG, TONG)
Thực thể BAN(TRANGTHAI, MABAN, TENBAN)
Thực thể DOUONG(MADOUONG, TENDOUONG, CATEGORY, GIA)
Thực thể CATEGORY(MACATEGORY, TENCATEGORY)
Cơ sở dữ liệu gồm có 5 bảng:
HOADONCHITIET (Hoá đơn chi tiết)
Yêu cầu với hệ thống thông tin
Tốc độ xử lý phải nhanh, dễ dàng, dễ sử dụng.
Có khả năng sao lưu và phục hồi CSDL khi có sự cố.
Cập nhật khách mới, đặt bàn, gọi món, chuyển bàn, ghép bàn, in hóa đơn cho khách hàng
Giúp người quản lý, nhân viên tra cứu dễ dàng.
3.2 Mô tả hoạt động của hệ thống 3.2.1 Hoạt động của quán
Một quán cafe đang tìm cách xây dựng một hệ thống quản lý hiệu quả nhằm giải quyết các vấn đề thường gặp như quản lý nhân viên và quản lý bàn Hệ thống này sẽ giúp quán hoạt động trơn tru hơn, nâng cao hiệu suất làm việc và cải thiện trải nghiệm của khách hàng.
Hệ thống quản lý quán Cafe giúp theo dõi tình trạng bàn ngồi, quản lý sản phẩm và giá cả, từ đó tạo điều kiện thuận lợi cho khách hàng trong việc thanh toán Nó cũng cho phép quản lý kho hàng và thống kê doanh thu, nhập xuất kho, giúp chủ quán dễ dàng theo dõi sự phát triển Hệ thống hỗ trợ quản lý bán hàng hiệu quả, đồng thời quản lý nhân sự để thuận tiện trong việc trả lương và sắp xếp lịch làm việc Ngoài ra, việc quản lý khách hàng còn giúp tạo ra ưu đãi cho khách quen, thu hút nhiều khách hàng hơn đến quán.
3.2.2 Đăng kí sử dụng dịch vụ
Khi khách đến, nhân viên sẽ hỏi số lượng người để sắp xếp chỗ ngồi hợp lý Sau khi dẫn khách đến chỗ ngồi, nhân viên phục vụ sẽ mang nước lọc, đá và Menu để khách chọn đồ uống hoặc món ăn Sau khi ghi nhận yêu cầu, nhân viên sẽ chuyển danh sách cho nhân viên pha chế Khi đồ uống hoàn thành, nhân viên phục vụ sẽ mang ra cho khách Khi rời đi, khách sẽ thanh toán tại quầy thu ngân và nhận hóa đơn nếu cần.
Phân tích chức năng
Bộ phận quản lý quán Cafe nhận được nguyên liệu nhập về, tiến hành phân loại theo loại sản phẩm, viết hóa đơn và lưu trữ trong kho
Sau mỗi ngày quản lý tổng hợp các sản phẩm đã bán trong ngày, nguyên liệu đã tiêu tốn và cần nhập thêm thứ gì sắp hết.
Dựa vào số lượng sản phẩm đã bán trong ngày, tiến hành tính tiền theo mức giá quy định và nhân với số lượng sản phẩm Sau đó, lưu hóa đơn vào máy tính để quản lý dễ dàng.
Khách hàng sử dụng dịch vụ sẽ được nhân viên ghi lại thông tin vào bảng dịch vụ, bao gồm mã dịch vụ, tên dịch vụ, đơn giá và tổng số tiền thanh toán, để tiện cho việc lập hóa đơn khi thanh toán.
Khi sử dụng dịch vụ, bạn sẽ nhận được phiếu chi tiết ghi rõ các thông tin quan trọng như mã số phiếu, mã dịch vụ, ngày sử dụng và số lượng lần sử dụng dịch vụ.
Hóa đơn cũng có chi tiết với các thông tin: mã hóa đơn, mã số phiếu, ngày lập, giá
CÀI ĐẶT HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE CHO HỆ THỐNG
Các bước cài đặt
Cách 1: Tải file “WINDOWS.X64_193000_db_home.zip” (phiên bản mới nhất đến thời điểm hiện tại và sử dụng cho việc học tập).
Cách 2: tải liên kết từ “Oracle” Lưu ý: phải đăng nhập trước khi tải, nếu chưa có tài khoản thì đăng ký.
Giải nén file WINDOWS.X64_193000_db_home.zip vừa tải về, sau đó tạo đường dẫn thư mục và copy các file vừa giải nén vào như hình bên dưới:
Nhấp chuột phải vào setup.exe (1) > Run as administrator (2)
Create and configure a single instance database (1) > Next (2)
Oracle base khai báo đường dẫn D:\app\oracle\ (1) > Next (2)
General Purpose / Transaction Processing (1) > Next (2)
Global database name và Oracle system identifier (SID) khai báo orcl (1) > Next (2)
Tab Memory (1) > Bỏ check Enable Automatic Memory Management và khai báo bộ nhớ RAM tại Allocate memory (2)
Tab Character sets (1) > Use Unicode (AL32UTF8) (2)
Tab Sample schemas (1) > Check Install sample schemas in the database (2) > Next (3)
File system (1) > Specify database file location khai báo đường dẫn D:\app\oracle\ oradata (2) > Next (3)
Bỏ check Register with Enterprise Manager (EM) Cloud Control > Next
Check Enable Recovery (1) > File system (2) > Recovery area location khai báo đường dẫn D:\app\oracle\recovery_area (3) > Next (4)
Use the same password for all accounts (1) > Khai báo Password và Confirm password (2) vd Admin123 > Next (3)
Hoàn thành Vào Start > Run > Gõ Services.msc > chọn OK
Màn hình hiện ra, tìm OracleOraDB19Home1TNSListener và OracleServiceORCL đang chạy (Running).
Chắc chắn rằng OracleOraDB19Home1TNSListener và OracleServiceORCL đang Running trước khi thực hiện các bước tiếp theo
Vào Start > Run > Gõ Services.msc > chọn OK, tìm
OracleOraDB19Home1TNSListener, phải chuột chọn Start để bật, Stop để tắt
Làm tương tự Bật Oracle Database, thay vì chọn Start chúng ta chọn Stop
1.5 Cấu hình để không khởi động cùng Windows
Khi cài đặt thì Oracle mặc định sẽ khởi động cùng Window, chúng ta nên tắt tính năng này
Vào Start > Run > Gõ Services.msc > chọn OK, tìm đến OracleOraDB19Home1TNSListener phải chuột chọn Properties
Chọn Manual: tắt bật thủ công => chọn Apply
Làm tương tự với OracleServiceORCL
Tài khoản người dùng
Mở khóa và đặt mật khẩu cho tài khoản hr
Mở màn hình Command Prompt (Start > Run > cmd > Enter) rồi lần lượt thực hiện
1 alter user hr identified by hr account unlock;
Mật khẩu của tài khoản hr là hr
Tương tự có thể mở khóa và đặt mật khẩu cho các tài khoản khác vd như sys (thay hr bằng sys)…
2.2 Sửa tài khoản người dùng
Đăng nhập tài khoản và khởi tạo Database
Chọn biểu tượng dấu cộng (1) > New Database Connection… (2)
Thực hiện lần lượt theo số thứ tự (mật khẩu là hr)
Bài toán ứng dụng
4.1.2 Các bài toán thực tế để truy vấn
Bài toán 1 : Mỗi khi có người vào bàn thì bàn đó sẽ được update trạng thái từ trống thành thành có người
Bài toán 2 yêu cầu lấy thông tin các hóa đơn liên quan đến bàn số 1 Bài toán 3 tìm kiếm thông tin về hóa đơn có số tiền cao nhất Cuối cùng, bài toán 4 tính tổng số đồ uống có trong quán.
Bài toán 5 : Lấy list đồ uống thuộc loại Macchiato
4.2 Giải các bài toán thực tế
Hình ảnh Câu lệnh trruy vấn
Hình ảnh Kết quả Bài 1:
Sao lưu và khôi phục dữ liệu
Kết nối tới Oracle sqlplus hoặc Oracle SQL Developer, sử dụng câu SQL sau xác định Oracle đã có thư mục dump để chưa file backup:
SQL> select * from dba_directories;
Thư mục dump (DATA_PUMP_DIR) được lưu ở /user/oracle/app/oracle/admin/orcl/dpdump Nếu không thấy thư mục này, các bạn tạo thư mục như sau:
1 SQL> create directory DATA_PUMP_DIR as '/user/oracle/app/oracle/admin/orcl/dpdump';
2 SQL> grant all on directory DATA_PUMP_DIR to ; DBAs dont need this grant
Câu lệnh grant là không cần thiết trong trường hợp là một sysdba Bước 2: Thiết lập charset (tùy chọn)
Bạn phải đảm bảo export charset phải đúng với charset của database:
VD với American UTF8 (UNIX) (trên Linux)
[oracle@vinasupport.com ~]$ export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 Trên Windows sử dụng command SET, ví dụ với charset Vietnamese UTF8:
C:\> set NLS_LANG=Vietnamese_Vietnam.AL32UTF8 Bước 3: Sao lưu dữ liệu
Mở terminal trên Linux, hoặc CMD/Powershell trên windows, gõ command bên dưới để tiến hành sao lưu.
Chúng ta có thể sao lưu dữ liệu hoặc với sự trợ giúp của chế độ Enterprise Manager (GUI) hoặc thông qua dòng lệnh của hệ điều hành.
RMAN là một công cụ mạnh mẽ, tinh vi được cung cấp bởi Oracle để thực hiện sao lưu và phục hồi.
RMAN được tự động cài đặt khi bạn cài đặt cơ sở dữ liệu Oracle vì vậy không có yêu cầu cài đặt thêm nào để sử dụng RMAN.
Môi trường RMAN bao gồm hai thành phần:
1 Cơ sở dữ liệu đichs (cơ sở dữ liệu mà bạn sẽ sao lưu, thực hiện phục hồi và
2 Máy khách RMAN, là khách hàng giải thích lệnh của người dùng và thực hiện thay cho người dùng trong khi kết nối với Cơ sở dữ liệu đích
Một lệnh đơn giản để kết nối với cơ sở dữ liệu bằng cách sử dụng RMAN như sau:
DBID là mã nhận dạng duy nhất cho mỗi cơ sở dữ liệu mà chúng ta dự định làm việc, và trong ví dụ này, cơ sở dữ liệu được đề cập có tên là ORCL.
Chúng ta sẽ sao lưu dữ liệu thuộc cơ sở dữ liệu ORCL.
Lưu trữ bản sao vật lý của cơ sở dữ liệu là rất quan trọng, vì vậy chúng ta cần một thư mục để lưu trữ chúng Để thực hiện điều này, có thể sử dụng thư mục đặc biệt gọi là db_recovery_file_dest, nơi sẽ phục vụ như vị trí sao lưu Kích thước của thư mục này được xác định bởi tham số db_recovery_file_dest_size, đánh dấu dung lượng của vị trí lưu trữ sao lưu.
Mặc dù có nhiều phương pháp nén và kỹ thuật để giảm kích thước bản sao lưu, việc thiết lập kích thước tối thiểu cho bản sao lưu vẫn rất quan trọng.
DB_RECOVERY_FILE_DEST_SIZE là kích thước thực tế của dữ liệu Hãy chắc chắn rằng bạn cũng có tài khoản cho các bản ghi lưu trữ, nhưng không bao gồm nhật ký làm lại ngoại tuyến, nhằm ghi lại các thay đổi cho khối dữ liệu của bạn.
Chiến lược sao lưu cần bao gồm tất cả các tệp liên quan đến cơ sở dữ liệu, bao gồm tệp dữ liệu, tệp điều khiển, tệp tham số, tệp mạng và các tệp bản ghi.
RMAN và các công cụ sao lưu vật lý khác có khả năng sao lưu dữ liệu, tập tin điều khiển, tệp tham số và tệp bản ghi Tuy nhiên, các tệp liên quan đến mạng cần được sao lưu thủ công thông qua các tiện ích của hệ điều hành, chẳng hạn như sử dụng mã lệnh hoặc tạo bản sao.
5.2 Khôi phục dữ liệu trên Oracle
Vì chúng ta đã kết nối với cơ sở dữ liệu đích (ORCL) nên chúng ta sẽ kích hoạt lệnh
Gõ lệnh list backup; ta được list các database đã được backup
Bản sao lưu này được đặt trong file DB_RECOVERY_FILE_DEST được định nghĩa là E:\APP\ORACLE\RECOVERY_AREA\ORCL\
EDE41D81A613475B8EC63D7AE2B2CA7F\BACKUPSET\2022_11_06\
O1_MF_NNNDF_TAG20221106T205225_KPHH1T1F_.BKP