Báo cáo bài tập lớn môn Cơ sở dữ liệu phân tán đề tài "Quản lý tài khoản ngân hàng"
Báo cáo bài tập lớn môn Cơ sở dữ liệu phân tán đề tài "Quản lý tài khoản ngân hàng" của Học viện Công nghệ Bưu chính Viễn thông với những kiến thức và thông tin bổ ích giúp sinh viên tham khảo, ôn luyện và phục vụ nhu cầu học tập của mình cụ thể là có định hướng ôn tập, nắm vững kiến thức môn học và làm bài tốt trong những bài kiểm tra, bài tiểu luận, bài tập kết thúc học phần, từ đó học tập tốt và có kết quả cao cũng như có thể vận dụng tốt những kiến thức mình đã học vào thực tiễn cuộc sống. Mời bạn đọc đón xem!
Preview text:
lOMoARcPSD| 37054152 1 MỤC LỤC
PHẦN 1: ĐẶT VẤN ĐỀ ...................................................................................................... ................ 3 I.
Giới thiệu ......................................................................................................
............................ 3
1. Nhu cầu và tầm quan trọng của dự án ...................................................
............................ 3
2. Sơ lược về dự án ...................................................................................................... ............ 3 II.
Vị trí và nhiệm vụ dữ liệu khi triển khai dự án ................................................... .............. 4 III.
Các đối tượng tham gia sử dụng dự án ...................................................
........................... 5
PHẦN 2: PHÂN TÍCH ...................................................................................................... .................. 5 I.
Các chức năng chính của hệ thống trong dự án ................................................... ................. 5 II.
Phân quyền cho các nhóm đối tượng sử dụng dự án ................................................... ..... 5 III.
Phân tích chức năng của từng vị trí thực hiện dự án ................................................... ..... 6 1.
Tại trụ sở chính ...................................................................................................... .................. 6 2.
Chi Nhánh Hà Nội, Hải Phòng, Đà Nẵng, Quảng Ninh, Bình Dương, Hồ Chí Minh, Cần
Thơ , Phú Thọ ......................................................................................................
.......................... 6 IV.
Chức năng của máy trạm , máy chủ ...................................................
................................. 6 1.
Chức năng của máy trạm ...................................................
.................................................. 6 2.
Chức năng ở máy chủ ...................................................................................................... .... 8 V.
Phân tích cơ sở dữ liệu ...................................................................................................... ...... 9 1.
Lược đồ thực thể E-R ...................................................................................................... .... 9 2.
Lược đồ quan hệ ...................................................................................................... .......... 11 3.
Bảng tần suất truy cập các vị trí ...................................................
.................................... 11 lOMoARcPSD| 37054152
PHẦN 3: THIẾT KẾ ...................................................................................................... ................... 12 I.
Thiết kế hệ thống mạng tổng quan ...................................................
.................................... 12 II.
Thiết kế CSDL của hệ thống ...................................................
.......................................... 13
1. Cấu trúc các bảng dữ liệu của hệ thống ...................................................
......................... 13
2. Quan hệ giữa các bảng . ..................................................................................................... 16 III.
Thiết kế CSDL phân tán ...................................................
................................................ 17
1. Lược đồ phục vụ cho phân mảnh ngang dẫn xuất ................................................... ......... 17
2. Thiết kế phân mảnh ngang , nhân bản ...................................................
............................ 17
3. Thiết kế định vị và vẽ sơ đồ định vị ...................................................
................................. 24 IV.
Lược đồ ánh xạ ...................................................................................................... ............. 26 V.
Thiết kế lược đồ nhân bản, đồng bộ hóa ...................................................
........................... 27 VI.
Thiết kế vật lí các trạm ...................................................
.................................................. 27
PHẦN 4: CÀI ĐẶT ......................................................................................................
..................... 28 I.
CÀI ĐẶT SQL SERVER 2022 ...................................................
........................................... 28 1.
Cài đặt SQL Server 2022 Developer ...................................................
............................. 28 2.
Cài đặt SQL Server Management Studio 19 ...................................................
................... 37 II.
Cài đặt tưởng lửa (Firewall) để mở cổng cho SQL ................................................... ...... 39 1.
Tắt tường lửa ...................................................................................................... ............... 39
2 . Mở port 1433 ......................................................................................................
................ 40
3 . Thêm New Rule ...................................................................................................... ............ 42 III.
Chuẩn bị folder để chứa các dữ liệu trao đổi trong quá trình update dữ liệu từ các lOMoARcPSD| 37054152
phân mảnh về cơ sở dữ liệu gốc , và từ cơ sở dữ liệu gốc đến các phân mảnh
.......................... 50 IV. Cài đặt Radmin và kết nối máy trạm và các chi nhánh
.................................................. 53 1.
Cài đặt Radmin ...................................................................................................... ........... 53 2.
Bật TCP IP và thêm IP các máy trạm ...................................................
........................... 55 3.
Tạo tài khoản sa ...................................................................................................... ........... 57 4.
Tạo Database QLNH ...................................................................................................... ... 59
V. Configure distribution ...................................................................................................... ..... 60
VI. Tạo Publication Database ...................................................
.............................................. 66 VII. Tạo Link Server
...................................................................................................... ........ 103 VIII.
Transaction , Trigger , Procedure ...................................................
............................... 108 1.
Viết các giao tác phân tán trên hệ thống phân tán........................................................108 2.
Viết các Trigger ...................................................................................................... .......... 109 3.
Viết các Procedure ...................................................................................................... ..... 111 lOMoARcPSD| 37054152
PHẦN 1: ĐẶT VẤN ĐỀ I. Giới thiệu:
1. Nhu cầu và tầm quan trọng của dự án:
- Với sự phát triển về mặt kinh tế trong thị trường Việt Nam trong những
năm gần đây, các ngân hàng nước ngoài đã có những bước tiếp cận thị
trường trong nước, mở ra nhiều chi nhánh nhỏ. Sự xuất hiện của các
ngân hàng nước ngoài mang lại nhiều lợi ích cho người dân Việt Nam
như: cải thiện chất lượng dịch vụ, hỗ trợ các doanh nghiệp, thúc đẩy sự
phát triển kinh tế của đất nước,...
- Việc sử dụng các chi nhánh nhỏ để quản lý sẽ mang tới khối lượng công
việc lớn cho trụ sở chính hay hệ thống cơ sở dữ liệu vì dữ liệu cần quản
lý là rất lớn. Việc quản lý từng tài khoản là rất quan trọng, các các thông
tin cá nhân cần được quản lý chặt chẽ và hợp lý. Trong thời đại công
nghệ mới, việc mở tài khoản ngân hàng không hề khó khăn dẫn tới lượng
lớn tài khoản được tạo mới mỗi ngày.
- Với việc đặt các chi nhánh tạo nhiều nơi cũng dẫn tới khối lượng dữ liệu
cần xử lý là vô cùng nhiều, có thể dẫn tới thời gian truy xuất dữ liệu kéo
dài, gây ảnh hưởng tới trải nghiệm của khách hàng. Chính vì vậy, ta cần
sử dụng hệ thống dùng cơ sở dữ liệu phân tán.
- Việc xây dựng hệ thống phân tán để quản lý chi nhánh ngân hàng là vô cùng cần thiết.
Những giá trị đem lại khi sử dụng mô hình cơ sở dữ liệu phân tán:
+ Cho khách hàng: Khách hàng có thể dễ dàng kiểm tra thông tin
thẻ cá nhân, kiểm tra các giao dịch cá nhân. Giúp việc truy cập
hay giao dịch nhanh chóng, ít bị tắc nghẽn.
+ Kinh tế: tiết kiệm tiền bạc và thời gian khi mở thêm chi nhánh mới,
trụ sở không cần dừng hoạt động. Dễ dàng phát hiện lỗi với các dữ
liệu ở chi nhánh cụ thể mà không cần rà soát toàn bộ.
2. Sơ lược về dự án:
- Loại thẻ là dữ liệu chung sẽ được cập nhật tại máy chủ.
- Chi nhánh, nhân viên, thông tin giao dịch, khách hàng, tài khoản, thẻ là
dữ liệu riêng của từng trụ sở và có thể cập nhật lên chi nhánh.
- Dự án triển khai với 1 vùng quản lý tại 8 vùng xử lý.
Trụ sở chính nước ngoài: nơi đặt máy chủ.
+ Chức năng: quản lý dữ liệu toàn hệ thống. lOMoARcPSD| 37054152
+ Dữ liệu: tất cả dữ liệu.
+ Nguồn dữ liệu: được nhân viên nhập cũng như các chi nhánh trả về.
+ Dữ liệu vận chuyển đến: các chi nhánh.
+ Đối tượng sử dụng: nhân viên quản lý hệ thống, được phép quản lý
( thêm, sửa, xóa) tất cả các dữ liệu.
Hà Nội, Hải Phòng, Đà Nẵng, Quảng Ninh, Bình Dương, Hồ Chí Minh,
Cần Thơ, Phú Thọ: nơi đặt chi nhánh.
+ Chức năng: quản lý dữ liệu của tất cả các đối tượng của chi nhánh đó (trừ loại thẻ)
+ Dữ liệu: chi nhánh, nhân viên, thông tin giao dịch, khách hàng, tài
khoản, thẻ và thông tin dữ liệu chung: loại thẻ.
+ Nguồn dữ liệu: được nhân viên nhập cũng như máy chủ gửi đến.
+ Dữ liệu vận chuyển đến: máy chủ.
+ Đối tượng sử dụng: nhân viên chi nhánh, khách hàng.
- Các quyền truy cập của người sử dụng:
+ Nhân viên trụ sở chính: tất cả quyền.
+ Nhân viên chi nhánh: đọc, thêm sửa xóa thông tin dữ liệu của chi
nhánh mình bao gồm: thông tin nhân viên, thông tin giao dịch,
chi nhánh, thông tin khách hàng, thông tin thẻ.
+ Khách hàng: đọc thông tin như: xem thông tin cá nhân, thông tin
giao dịch, thông tin thẻ. II.
Vị trí và nhiệm vụ dữ liệu khi triển khai dự án:
Dự án triển khai bao gồm: 1 máy chủ, 8 chi nhánh:
- Vị trí 1: Sever chi nhánh, vị trí đặt tại Hà Nội.
- Vị trí 2: Sever chi nhánh, vị trí đặt tại Hải Phòng.
- Vị trí 3: Sever chi nhánh, vị trí đặt tại Đà Nẵng.
- Vị trí 4: Sever chi nhánh, vị trí đặt tại Quảng Ninh.
- Vị trí 5: Sever chi nhánh, vị trí đặt tại Bình Dương.
- Vị trí 6: Sever chi nhánh, vị trí đặt tại Hồ Chí Minh.
- Vị trí 7: Sever chi nhánh, vị trí đặt tại Cần Thơ.
- Vị trí 8: Sever chi nhánh, vị trí đặt tại Phú Thọ.
- Vị trí tổng: Sever tổng, đặt máy chủ tại nước ngoài. III.
Các đối tượng tham gia sử dụng dự án: - Khách hàng:
+ Xem thông tin cá nhân, tài khoản, thông tin giao dịch. + Sửa thông tin cá nhân. lOMoARcPSD| 37054152
- Nhân viên chi nhánh:
+ Có quyền giống với khách hàng.
+ Quản lý thông tin tài khoản, thẻ, thông tin giao dịch của chi nhánh đó.
+ Xem báo các của chi nhánh đó.
- Nhân viên trụ sở:
+ Quản lý tất cả dữ liệu có trong hệ thống, các quyền của đối tượng trên.
+ Xem báo cáo của các chi nhánh. PHẦN 2: PHÂN TÍCH I.
Các chức năng chính của hệ thống trong dự án:
- Quản lý thông tin chi nhánh (Thêm, sửa, xóa, thống kê tùy chọn)
- Quản lý thông tin khách hàng (Thêm, sửa, xóa, thống kê tùy chọn)
- Quản lý thông tin nhân viên (Thêm, sửa, xóa, thống kê tùy chọn)
- Quản lý thông tin tài khoản (Thêm, sửa, xóa, thống kê tùy chọn)
- Quản lý thông tin thẻ (Thêm, sửa, xóa, thống kê tùy chọn)
- Quản lý loại thẻ (Thêm, sửa, xóa, thống kê tùy chọn)
- Quản lý thông tin giao dịch (Thêm, sửa, xóa, thống kê tùy chọn) II.
Phân quyền cho các nhóm đối tượng sử dụng dự án:
- Nhân Viên tại các trụ sở:
+ Thêm sửa xóa xem thông tin của khách hàng trụ sở đó
+ Thêm sửa xóa xem thông tin giao dịch tại trụ sở đó
+ Xem thông tin chi nhánh tại trụ sở đó
+ Xem báo cáo thống kê của trụ sở -
Khách hàng tại các trụ sở:
+ Xem thông tin tài khoản cá nhân, thông tin giao dịch của mình -
Nhân viên quản lý tại máy chủ tổng:
+ Truy cập vào dữ liệu có trong hệ thống cũng như có tất cả quyền
của các đối tượng trên
+ Thêm sửa xóa thông tin của tất cả dữ liệu
+ Xem báo cáo chung của các chi nhánh lOMoARcPSD| 37054152 III.
Phân tích chức năng của từng vị trí thực hiện dự án:
1. Tại trụ sở chính.
- Nhân viên quản lý tại trụ sở chính có quyền quản lý tổng thể các
thông tin về chi nhánh, các nhân viên, khách hàng, thẻ, loại thẻ,
thông tin giao dịch. ( Cụ thể có quyền thêm, sửa, xóa, xem thông tin).
2. Chi Nhánh Hà Nội, Hải Phòng, Đà Nẵng, Quảng Ninh, Bình
Dương, Hồ Chí Minh, Cần Thơ, Phú Thọ.
- Quản lý thông tin tại chi nhánh của mình gồm: các nhân viên,
các khách hàng, thông tin giao dịch, thẻ, loại thẻ, thông tin giao dịch.
- Dữ liệu về các nhân viên, thẻ được cập nhật máy trạm sẽ được
chuyển về máy chủ định kỳ hàng tuần.
- Dữ liệu về các khách hàng, thông tin giao dịch được cập nhật ở
máy trạm sẽ được chuyển về máy chủ sau 1 phút.
- Chỉ được quyền xem thông tin về chi nhánh, loại thẻ nhưng
không có quyền chỉnh sửa. ( Quyền chỉnh sửa chỉ có ở trụ sở chính). IV.
Chức năng của máy trạm, máy chủ:
1. Chức năng của máy trạm:
a. Chức năng quản lý thông tin nhân viên
- Giúp chi nhanh quản lý chi nhánh thực hiện các thao tác thêm sửa
xóa thông tin nhân viên. Các thông tin sẽ được lưu trữ trong cơ sở dữ liệu.
- Các thông tin nhân viên gồm: + Mã Nhân viên + Tên Nhân viên + Ngày sinh nhân viên + Địa chỉ nhân viên
+ Số điện thoại nhân viên
b. Chức năng quản lý thông tin khách hàng
- Giúp chi nhanh quản lý chi nhánh thực hiện các thao tác thêm sửa
xóa thông tin khách hàng. Các thông tin sẽ được lưu trữ trong cơ sở dữ liệu. lOMoARcPSD| 37054152
- Các thông tin khách hàng gồm: + Mã khách hàng + Số CCCD + Tên khách hàng + SDT khách hàng + Ngày Sinh khách hàng + Địa chỉ khách hàng
c. Chức năng quản lý thông tin tài khoản
- Giúp chi nhanh quản lý chi nhánh thực hiện các thao tác thêm sửa
xóa thông tin tài khoản. Các thông tin sẽ được lưu trữ trong cơ sở dữ liệu.
- Các thông tin tài khoản gồm: + Số Tài khoản + Số Dư Tk + Ngày cấp tk
d. Chức năng quản lý thông tin tài khoản
- Giúp chi nhanh quản lý chi nhánh thực hiện các thao tác thêm sửa
xóa thông tin giao dịch. Các thông tin sẽ được lưu trữ trong cơ sở dữ liệu.
- Các thông tin giao dịch gồm: + Mã giao dịch + Loại giao dịch + Thời gian giao dịch + Số tiền giao dịch
+ Tài khoản dịch số tài khoản
e. Chức năng quản lý thẻ
- Giúp chi nhánh quản lý chi nhánh thực hiện các thao tác thêm sửa
xóa thông tin thẻ. Các thông tin sẽ được lưu trữ trong cơ sở dữ liệu.
- Các thông tin giao dịch gồm: + Số thẻ + Ngày hết hạn
2. Chức năng ở máy chủ
a. Có toàn bộ chức năng của máy trạm b. Chức năng quản lý thông tin loại thẻ
- Giúp máy chủ có thể thực hiện các thao tác thêm, sửa, xóa thông
tin loại thẻ .Các thông tin này sẽ được lưu trữ trong cơ sở dữ liệu.
- Các thông tin loại thẻ gồm: lOMoARcPSD| 37054152 + Mã loại thẻ + Tên loại thẻ
c. Chức năng quản lý thông tin chi nhánh
- Giúp máy chủ có thể thực hiện các thao tác thêm, sửa, xóa thông
tin chi nhánh .Các thông tin này sẽ được lưu trữ trong cơ sở dữ liệu.
- Các thông tin chi nhánh gồm: + Mã chi nhánh + Tên chi nhánh
+ Số điện thoại chi nhánh + Địa chỉ chi nhánh
d. Chức năng xem báo cáo thống kê
- Giúp cho người quản lý tổng biết được những thông tin như: báo
cáo về tình trạng chi nhánh, báo cáo về hiệu quả làm việc của
nhân viên, báo cáo về khách hàng, báo cáo về thông tin giao dịch, tài khoản,.... - Chức năng phân quyền
- Giúp cho người quản lý thực hiện phân quyền cho các tài khoản cũng như các chi nhánh. V.
Phân tích cơ sở dữ liệu:
1. Lược đồ thực thể E-R:
- Branch-Customer là mối quan hệ một - nhiều vì một chi nhánh có nhiều khách hàng.
- Branch- Staff là mối quan hệ một - nhiều vì một chi nhánh có nhiều nhân viên.
- Staff-TransactionInfo là mối quan hệ một - nhiều vì một nhân
viên có thể làm nhiều thông tin giao dịch.
- Customer-Account là mối quan hệ một - nhiều vì một khách hàng
có thể có nhiều tài khoản.
- Account - TransactionInfo là mối quan hệ một - nhiều vì một tài
khoản có thể có nhiều lần giao dịch nên sẽ có nhiều thông tin khách hàng
- Account- card là mối quan hệ một - nhiều vì một account có thể có nhiều thẻ.
- CardType- Card là mối quan hệ một - nhiều vì 1 loại thẻ có thể có nhiều thẻ. lOMoARcPSD| 37054152 lOMoARcPSD| 37054152
2. Lược đồ quan hệ:
3. Bảng tần suất truy cập các vị trí: - W: tạo mới và ghi - E: sửa - D: xóa - R: đọc - H: tần suất cao - L: tần suất thấp lOMoARcPSD| 37054152 Thực thể Máy chủ Máy trạm Chi Nhánh H.R, L.WED H.R Nhân Viên H.R,L.WED H.R,L.WED Thông tin GD H.RWED H.RWED Khách hàng H.RWED H.RWED Tài Khoản H.RWED H.RWED Thẻ L.RWED H.RWED Loại thẻ H.R,L.WED H.R PHẦN 3: THIẾT KẾ I.
Thiết kế hệ thống mạng tổng quan:
- Trụ sở chính: Đặt máy Server chính tại nước ngoài thực hiện các chức
năng và lưu CSDL của toàn hệ thống.
- Trụ sở đào tạo Hà Nội: Đặt máy Server trạm 1 và các client tương ứng
thực hiện chức năng và lưu toàn bộ CSDL thuộc Hà Nội.
- Trụ sở đào tạo Hải Phòng: Đặt máy Server trạm 2 và các client tương ứng
thực hiện chức năng và lưu toàn bộ CSDL thuộc Hải Phòng.
- Trụ sở đào tạo Đà Nẵng: Đặt máy Server trạm 3 và các client tương ứng
thực hiện chức năng và lưu toàn bộ CSDL thuộc Đà Nẵng.
- Trụ sở đào tạo Quảng Ninh: Đặt máy Server trạm 4 và các client tương
ứng thực hiện chức năng và lưu toàn bộ CSDL thuộc Quảng Ninh. lOMoARcPSD| 37054152
- Trụ sở đào tạo Bình Dương: Đặt máy Server trạm 5 và các client tương
ứng thực hiện chức năng và lưu toàn bộ CSDL thuộc Bình Dương.
- Trụ sở đào tạo Hồ Chí Minh: Đặt máy Server trạm 6 và các client tương
ứng thực hiện chức năng và lưu toàn bộ CSDL thuộc Hồ Chí Minh.
- Trụ sở đào tạo Cần Thơ: Đặt máy Server trạm 7 và các client tương ứng
thực hiện chức năng và lưu toàn bộ CSDL thuộc Cần Thơ.
- Trụ sở đào tạo Phú Thọ: Đặt máy Server trạm 8 và các client tương ứng
thực hiện chức năng và lưu toàn bộ CSDL thuộc Phú Thọ. II.
Thiết kế CSDL của hệ thống:
1. Cấu trúc các bảng dữ liệu của hệ thống: + dbo.Account + dbo.Branch + dbo.Card + dbo.CardType lOMoARcPSD| 37054152 + dbo.Customer + dbo.Staff + dbo.TransactionInfo lOMoARcPSD| 37054152
2. Quan hệ giữa các bảng: III.
Thiết kế CSDL phân tán:
1. Lược đồ phục vụ cho phân mảnh ngang dẫn xuất: lOMoARcPSD| 37054152
2. Thiết kế phân mảnh ngang, nhân bản:
- Vị trí 1: Server chi nhánh, nơi đặt máy trạm tại trụ sở ngân hàng Hà Nội.
- Vị trí 2: Server chi nhánh, nơi đặt máy trạm tại trụ sở ngân hàng Hải Phòng.
- Vị trí 3: Server chi nhánh, nơi đặt máy trạm tại trụ sở ngân hàng Đà Nẵng.
- Vị trí 4: Server chi nhánh, nơi đặt máy trạm tại trụ sở ngân hàng Quảng Ninh
- Vị trí 5: Server chi nhánh, nơi đặt máy trạm tại trụ sở ngân hàng Bình Dương.
- Vị trí 6: Server chi nhánh, nơi đặt máy trạm tại trụ sở ngân hàng Hồ Chí Minh.
- Vị trí 7: Server chi nhánh, nơi đặt máy trạm tại trụ sở ngân hàng Cần Thơ.
- Vị trí 8: Server chi nhánh, nơi đặt máy trạm tại trụ sở ngân hàng Phú Thọ.
- Vị trí 9: Server tổng, nơi đặt máy chủ tại nước ngoài. lOMoARcPSD| 37054152
Để phân mảnh, chọn quan hệ tổng thể làm tiêu chí để phân mảnh,
phân thành 8 mảnh đặt tại 8 vị trí để quản lý các chi nhánh ở các vùng lân
cận, sau đó dựa vào các mảnh của chi nhánh sẽ dẫn xuất đến sự phân
mảnh của các quan hệ tổng thể còn lại. Mảnh Trụ Sở Cơ sở dữ Phân mảnh ngang
Phân mảnh ngang dẫn xuất liệu nguyên thủy 1 Hà Nội Quản lý tài - Bảng phân mảnh : - Bảng phân mảnh : khoản ngân Branch Customer
hàng Hà Nội - Điều kiện phân tán :
- Điều kiện dẫn xuất: BranchHaNoi = Customer1 = Customer σID=‘B001’(Branch) BranchHaNoi - Bảng phân mảnh : Staff
- Điều kiện dẫn xuất : Staff1 = Staff BranchHaNoi - Bảng phân mảnh : TransactionInfo
- Điều kiện dẫn xuất : TransactionInfo1 = TransactionInfo Staff - Bảng phân mảnh : Account
- Điều kiện dẫn xuất : Account1 = Account Customer - Bảng phân mảnh : lOMoARcPSD| 37054152 lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Điều kiện dẫn xuất : Card8= Card Account
3. Thiết kế định vị và vẽ sơ đồ định vị:
a. Thiết kế sơ đồ định vị:
Phân mảnh ngang nguyên thủy và phân mảnh ngang dẫn xuất để
chia quan hệ tổng thể thành 8 mảnh đặt tại 8 chi nhánh sau:
- Server chính đặt tại nước ngoài chứa thông tin của toàn bộ hệ
thống: Các Branch, Staff, Customer, Account, TransactionInfo,
Card, CardType của trụ sở.
- Trụ sở ngân hàng Hà Nội: Máy trạm 2 tại Hà Nội, các Branch,
Staff, Customer, Account, TransactionInfo, Card của chi nhánh đó.
- Trụ sở ngân hàng Hải Phòng: Máy trạm 3 tại Hải Phòng, các
Branch, Staff, Customer, Account, TransactionInfo, Card của chi nhánh đó.
- Trụ sở ngân hàng Đà Nẵng: Máy trạm 4 tại Đà Nẵng, các Branch,
Staff, Customer, Account, TransactionInfo, Card của chi nhánh đó.
- Trụ sở ngân hàng Quảng Ninh: Máy trạm 5 tại Quảng Ninh, các
Branch, Staff, Customer, Account, TransactionInfo, Card của chi nhánh đó.
- Trụ sở ngân hàng Bình Dương: Máy trạm 6 tại Bình Dương, các
Branch, Staff, Customer, Account, TransactionInfo, Card của chi nhánh đó.
- Trụ sở ngân hàng Hồ Chí Minh: Máy trạm 7 tại Hồ Chí Minh, các
Branch, Staff, Customer, Account, TransactionInfo, Card của chi nhánh đó.
- Trụ sở ngân hàng Cần Thơ: Máy trạm 8 tại Cần Thơ, các Branch,
Staff, Customer, Account, TransactionInfo, Card của chi nhánh đó.
- Trụ sở ngân hàng Phú Thọ: Máy trạm 9 tại Phú Thọ, các Branch,
Staff, Customer, Account, TransactionInfo, Card của chi nhánh đó.
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
b. Sơ đồ định vị: IV.
Lược đồ ánh xạ:
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152 V.
Thiết kế lược đồ nhân bản, đồng bộ hóa:
- Thông tin tại máy chủ: Các CardType tại máy chủ sẽ được nhân bản tại
các máy trạm (đồng bộ hóa về máy trạm mỗi khi có sự thay đổi từ máy
chủ). Nhân bản có thể thực thi giữa những CSDL trên cùng một server
hay những server khác nhau được kết nối bởi mạng LANs, WANs hay Internet.
- Nếu tại máy chủ có sự cập nhật thông tin Branch, Staff, Customer,
Account, TransactionInfor, Card thì sẽ được đồng bộ hóa về trụ sở nó thuộc về.
- Thông tin tại máy trạm: Branch, Staff, Customer, Account,
TransactionInfor, Card được cập nhật thì sẽ được đồng bộ hóa về máy
chủ mỗi khi có thông tin. VI.
Thiết kế vật lí các trạm: STT Tên bảng Ý Nghĩa 1 dbo.Branch
Chi nhánh, chứa thông tin liên quan đến chi
nhánh, phục vụ công tác quản lý thông tin chi nhánh 2
dbo.Staff Nhân viên, chứa thông tin nhân viên để quản lý nhân viên 3
dbo.Customer Khách hàng, chứa thông tin khách hàng để quản lý khách hàng 4 dbo.Account
Tài khoản, chứa thông tin tài khoản để quản lý tài khoản
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152 5
dbo.Card Thẻ, chứa thông tin thẻ để quản lý thẻ 6
dbo.CardType Loại thẻ, chứ thông tin loại thẻ để quản lý loại thẻ 7
dbo.TransactionInfo Thông tin giao dịch, chứa thông tin giao dịch để quản lý giao dịch PHẦN 4: CÀI ĐẶT I.
CÀI ĐẶT SQL SERVER 2022:
1. Cài đặt SQL Server 2022 Developer:
- Chạy file .exe sau khi tải về.
- Chọn vào phần Download MediaMedia
- Chọn mở tệp .iso và chạy file setup.exe
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Giao diện cài đặt hiện lên, chọn Installation sau đó chọn tiếp New SQL server ...
- Trong giao diện SQL Server 2022 Setup, tiếp tục cài đặt như hình sau:
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Đặt Named instance và Instance ID là “CSDLPTNHOM1” (tên có
thể đặt tùy ý, không dấu, không khoảng trắng) sau đó nhấn next .
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Đặt password cho supper admin (sa)
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Nhấn Add Current User để thêm tài khoản
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Nhấn Install để cài đặt
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
2. Cài đặt SQL Server Management Studio 19
- Sau khi cài đặt xong SQL Server, tiếp tục cài đặt SSMS 19
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Nhấn vào Install SQL Server Manager Tools
- Nhấn Free Download for SSMS 19.0.2, sau đó mở thư mục tải về và
chạy file SSMS-Setup-ENU
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- \Giao diện cài đặt hiển thị, nhấn Install
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152 II.
Cài đặt tưởng lửa (Firewall) để mở cổng cho SQL:
1. Tắt tường lửa:
- Mở Windows Defender Firewall
- Mở Customize setting và tắt tường lửa
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
2. Mở port 1433:
Mục đích : Theo mặc định, SQL Server sử dụng Cổng TCP 1433 để giao
tiếp với các ứng dụng. Nếu ta đang chạy một ứng dụng yêu cầu kết nối
với SQL Server, ta phải bật cổng 1433 cho SQL Server để kết
nối.Sau đây là các bước để mở port 1433
- Mở SQL Server 2022 Configuration Manager
- Tiếp tục thực hiện theo các ảnh sau.
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Tiến hành thêm port 1433 ở cửa sổ Properties
- Chọn SQL Server Sevices và Restart lại Server đã config và restart lại
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
3. Thêm New Rule:
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Ở bước này, chọn tệp sqlservr ở C:/Program File/..
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Kiểm tra lại ở Inbound Rules, thấy 3 rules mới vừa được cập nhật.
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152 III.
Chuẩn bị folder để chứa các dữ liệu trao đổi trong quá trình
update dữ liệu từ các phân mảnh về cơ sở dữ liệu gốc, và từ cơ sở
dữ liệu gốc đến các phân mảnh. REPLDATA
- Tạo 1 folder C:\REPLDATA để chứa các dữ liệu trao đổi trong quá
trình update dữ liệu từ các phân mảnh về cơ sở dữ liệu gốc, và từ cơ
sở dữ liệu gốc đến các phân mảnh.
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Tại Properties của thư mục mới tạo, chọn Share
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152 IV.
Cài đặt Radmin và kết nối máy trạm và các chi nhánh
1. Cài đặt Radmin
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Tải và cài đặt Radmin
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
2. Bật TCP IP và thêm IP các máy trạm
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
3. Tạo tài khoản sa:
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
4. Tạo Database QLNH:
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152 V. Configure distribution
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152 VI.
Tạo Publication Database:
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152 VII. Tạo Link Server
Mục tiêu: Thực hiện kết nối 2 máy tính với nhau để truyền dữ liệu qua lại giữa các
máy tính với nhau không thông qua máy chủ.
Ví dụ: Máy 2 tạo tài khoản login là “VIETDB” để máy 1 có thể chọc vào DB của máy 2.
Các bước thực hiện Link Server:
Bước 1: Tạo “New Login” trong phần kết nối của cơ sở dữ liệu để tạo một kết nối riêng
Bước 2: Đặt tên kết nối là “VIETDB”; Chọn “SQL Server authentication” và đặt
password là 123456789, confirm password: 123456789. Bỏ chọn các tích xanh bên dưới.
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Bước 3: Chọn “User Mapping” tại “Select a page”. Chọn DB muốn chia sẻ, trong
trưởng hợp này là “QLNH”. Tiếp theo, chọn “db_owner” ở dưới để cập nhật dữ liệu
sang máy 1 với tất cả dữ liệu có khả năng thao tác thêm, sửa, xóa, tạo.
Bước 4: Tại máy 1: Chọn “New Linked Server” ở “Linked Servers”.
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Bước 5: Thực hiện cài đặt Linked Server đó. Đặt tên cho Linked Server bạn trỏ tới
tại “Linked server”. Nhập “Product Name” và “Data source” là nơi mà máy 1 chọc dữ
liệu đến (ở đây là máy 2 có tên: “LAPTOP-PBDKBDF8\CSDLPTNHOM1”)
Bước 6: Chọn “Be made using this security context”. Chọn “Remote login”:
VIETDB. Chọn password: 123456789 (tài khoản và mật khẩu máy 2 đã tạo).
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Bước 7: Chọn tất cả giá trị các phần từ phía trên“Use Remote Collation” là “True” và click “OK”.
Ta sẽ thấy một “Linked Servers” mới có tên “VIETDB”. Sau đó thực hiện truy
vấn đến dbo.Account của Linked Servers này (tức máy 2).
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Làm tương tự để tạo Link Server đến các máy khác dựa vào một số thông tin mà các máy trạm cung cấp. Thành viên
Tên Server Tài Mật khẩu Linked khoản Server Bùi Mạnh Đắc LAPTOP-T2NKFE3T\CSDLP DACBM 123456789 DACBM TNHOM1 Nguyễn Đức DESKTOP-JJD56NF\CSDLPT HAIND 123456789 HAIND Hải NHOM1 Phạm Huy CRIUS\CSDLPTNHOM1 KHOIPH 123456789 KHOIPH Khôi Đinh Huy Phúc DESKTOP-P97E545\CSDLPT PHUCDH 123456789 PHUCDH NHOM1 Đoàn Thế Phúc DESKTOP-GUBAFOE\CSDL PHUCDT 123456789 PHUCDT PTNHOM1 Đoàn Thị ADMIN\CSDLPTNHOM1 THUYDT 123456789 THUYDT Thanh Thùy T T Đỗ Đức Viên DESKTOP-V31PK2S\CSDLP VIENDD 123456789 VIENDD TNHOM1 Đặng Bảo Việt LAPTOP-PBDKBDF8\CSDLP VIETDB 123456789 VIETDB TNHOM1 Nguyễn Đức
DESKTOP-4HCTNPR\CSDLP VIETND 123456789 VIETND Việt TNHOM1
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
VIII. Transaction, Trigger, Procedure:
1. Viết các giao tác phân tán trên hệ thống phân tán
Ví dụ: Thiết lập một giao tác phân tán để: Máy trạm xóa một nhân viên, đồng thời cập
nhật thêm một nhân việc cho máy trạm đích đã được kết nối, sau đó in thông tin về
bảng Staff thông qua đường link server.
Do id_Staff muốn thêm vào table [VIETDB].[QLNH].[dbo].[Staff] đã tồn tại
trong bảng nên toàn bộ giao tác này sẽ bị hủy và nhảy đến CATCH. Trong phần
CATCH thực hiện tạo thông báo lỗi và thực hiện rollback khôi phục lại trạng thái
trước giao tác, tức nhân viên có id_Staff là “SCT010” sẽ không bị xóa khỏi table
[QLNH].[dbo].[Staff] của máy trạm hiện tại.
Trước khi thực hiện giao tác: Thông báo lỗi:
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Sau khi thực hiện giao tác:
2. Viết các Trigger:
- Ví dụ: Viết trigger có nhiệm vụ tự động update số tiền sau khi giao dịch:
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Ví dụ: Viết trigger ngăn việc chỉnh sửa dử liệu trên bảng Branch ở máy trạm.
3. Viết các Procedure:
- Ví dụ: Viết một Procedure đếm số lượng tài khoản của một khách hàng.
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Ví dụ: Viết một Procedure đếm số lượng nhân viên của một chi nhánh.
Downloaded by Jiisaa Miliana (milihisa22@gmail.com)