Xây dựng cơ sở dữ liệu dự phòng cho cơ sở dữ liệu giao dịch của FPTS

Một phần của tài liệu 817 nghiên cứu và đề xuất một số giải pháp đảm bảo an toán thông tin và dự phòng rủi ro cho cơ sở dữ liệu giao dịch của công ty cổ phần chứng khoán FPT,Khoá luận tốt nghiệp (Trang 63 - 83)

3.1.4.1. Thiết lập máy chủ

Hình 3.8. Sơ đồ hệ thống thông tin khi thêm cơ sở dữ liệu dự phòng

Hệ thống máy chủ cho cơ sở dữ liệu dự phòng khi được xây dựng sẽ được đặt tại khu công nghệ cao Hòa Lạc. Sử dụng đường dây thuê riêng để có thể đảm bảo an toàn bảo mật khi truyền dữ liệu đị

IP 172.31.24.121 172.31.31.199

Phần mềm

Oracle 11gR2 (11.2.0.1) và cơ

sở dữ liệu Oracle 11gR2 (11.2.0.1)

SID dbtest dbtest

db_unique_name dbtest dbtest_stby

Bảng 3.1. Thông tin về hệ thống chính và dự phòng Khóa luận tốt nghiệp

/usr/sbin/groupađ -g 502 dba /usr/sbin/groupađ -g 503 oper

- Tạo user Oracle để sử dụng cho cơ sở dữ liệụ /usr/sbin/userađ -u 502 -g oinstall -G dba,oper oracle

- Thêm các tham số kernel vào file /etc/sysctl.conf. kernel.shmmni = 4096 kernel.shmmax = 4398046511104 kernel.shmall = 1073741824 kernel.sem = 250 32000 100 128 fs.aio-max-nr = 1048576 fs.file-max = 6815744 net.ipv4.ip_local_port_range = 9000 65500

Hình 3.9. Mô hình cơ sở dữ liệu chính và dự phòng

sở dữ liệu chính đặt tại trung tâm dữ liệu của FPTS khi hoạt động sẽ tạo ra các tệp tin nhật ký. Sử dụng kết nối Oracle Net trên đường truyền thuê riêng để gửi các tệp tin nhật ký này tới cơ sở dữ liệu dự phòng. Trên hệ thống cơ sở dữ liệu dự phòng sẽ có các dịch vụ của Oracle Data Guard để nhận các tệp tin nhật ký và áp dụng các thay đổi lên cơ sở dữ liệu nàỵ

Cài đặt hệ quản trị cơ sở dữ liệu Oracle

net.corẹrmem_max = 4194304 net.corẹwmem_default = 262144 net.corẹwmem_max = 1048586

- Thiết lập quyền shell cho user Oracle bằng cách thêm đoạn sau vào file /etc/sercurity/limit.conf. oracl e soft nproc 131072 oracl e hard nproc 131072 oracl e soft nofile 131072 oracl e hard nofile 131072 oracl

e soft core unlimited oracl

e hard core unlimited oracl e soft memlock 50000000 oracl e har d memlock 50000000

- Sửa file /home/oracle/.bash_profile để thêm các biến môi trường sử dụng cho phần mềm Oraclẹ # Oracle Settings export TMP=/tmp 1 export ORACLE_HOSTNAME=dbtest.hainx.com export ORACLE_UNQNAME=dbtest export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbtest export ORACLE_SID=dbtest PATH=/usr/sbin: $PATH:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; alias cdob='cd $ORACLE_BASÉ

alias cdoh='cd $ORACLE_HOMÉ

alias tns='cd $ORACLE_HOME/network/admin' alias envo='env | grep ORACLÉ

- Tạo các thư mục và gán quyền mkdir -p /u01/app

chown oracle:oinstall /u01/app chmod 775 /ora01/app

mkdir -p /u01/app/oracle

chown oracle:oinstall /u01/app/oracle chmod 775 /u01/app/oracle

mkdir -p /u01/app/oracle/product/11.2.0/dbtest chown oracle:oinstall -R /u01/app/oracle

- Tắt tính năng SELinux (bảo mật hạn chế truy cập vào một vài module nhất định của nhân kernel) bằng cách sửa file /etc/selinux/config sau đó khởi động lại server.

SELINUX=Permissive

- Mở thư mục chứa phần mềm đã tải và tiến hành chạy file cài đặt. su - oracle

cd /u01/database/ ./runInstaller

- Giao diện cài đặt Oracle Database 11gR2.

Khóa luận tốt nghiệp

- Chọn chỉ cài đặt phần mềm cơ sở dữ liệu, không tạo cơ sở dữ liệu, bước tạo sẽ thực hiện saụ

Hình 3.11. Giao diện cài đặt Oracle 11gR2 (2)

- Chọn “Single instance database installation”.

- Chọn ngôn ngữ tiếng Anh.

Hình 3.13. Giao diện cài đặt Oracle 11gR2 (4)

- Chọn phiên bản “Enterprise Editon” để hỗ trợ tính năng Data Guard.

Khóa luận tốt nghiệp

- Chọn thư mục lưu trữ Oracle Base, Oracle Inventory,...

Hình 3.15. Giao diện cài đặt Oracle 11gR2 (6)

- Chọn Database Administrator Group và Database Operator Group như 2 group

dba, oper đã tạo từ các bước trước.

Hình 3.17. Giao diện cài đặt Oracle 11gR2 (8)

- Kiểm tra lại các thông số đã chọn.

NAME TYPE VALUE

db name string dbtest

SQL> show parameter db unique name;

NAME TYPE VALUE

dbunique name string dbtest

Khóa luận tốt nghiệp

- Bắt đầu tiến trình cài đặt.

Hình 3.15. Giao diện cài đặt Oracle 11gR2 (10)

- Hoàn thành tiến trình cài đặt Oracle Database 11gR2.

Hình 3.16. Giao diện cài đặt Oracle 11gR2 (11) Khóa luận tốt nghiệp

3.1.4.2. Thiết lập cơ sở dữ liệu dự phòng và đồng bộ với cơ sở dữ liệu chính

ạ Cài đặt các tham số

- Kiểm tra Archive log xem đã bật chưa, archive log cần phải bật để có thể lưu trữ các nhật ký rồi gửi đến hệ thống dự phòng.

Connected to:

Oracle Database Ilg Enterprise Edition Release 11.2.0.1.Θ - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options S0L> archive log list;

Database log mode No Archive Mode

Automatic archival Disabled

Archive destination USE DB RECOVERY FILEDEST

Oldest online log sequence 6θ

Current log sequence Ỗ2

Hình 3.17. Thiết lập Oracle Data Guard (1)

- Hiện archive log đang bị vô hiệu hóa, tiến hành tắt cơ sở dữ liệu, bật archive log và mở lại cơ sở dữ liệụ

SQL> shutdown immediate; Database closed.

Database dismounted. ORACLE instance shut down. Ξ0L> startup mount;

ORACLE instance started.

Total System Global Area 413372416 bytes

Fixed Size 2213896 bytes

Variable size 331352Θ56 bytes

Database Buffers 75497472 bytes

Redo Buffers 4308992 bytes

Database mounted.

SQL> alter database archivelog; Database altered.

Hình 3.18. Thiết lập Oracle Data Guard (2)

- Kiểm tra lại db_name và db_unique_namẹ

Khóa luận tốt nghiệp

- Đặt tham số log_archive_config để khai báo cơ sở dữ liệu gửi và nhận log.

SQL> alter system set log archive_config='DG_CONFIG=(dbtest,dbtest_stby)';

System altered.

Hình 3.20. Thiết lập Oracle Data Guard (4)

- Đặt tham số log_archive_dest_2, là địa chỉ thứ 2 để lưu archive log.

SQL> alter system set log archive dest_2='SERVICE=dbtest_stby NOAFFIRM ASYNC VAL

ID FOR=(ONLINE LOGFILES, PRIMARY ROLE) DBUNIQUENAME=dbtest_Stby■;

System altered.

SQL> alter system set log archive deststate2=enable;

System altered.

Hình 3.21. Thiết lập Oracle Data Guard (4)

- Đặt định dạng tên cho file archive log, số lượng tiến trình ghi log và tệp tin mật khẩu (sử dụng để truy cập user sysdba - quản trị từ server khác).

SQL> alter system set log archive format='%t_%s_%r.arc' scope=spfile;

System altered.

SQL> alter system set log archivemax processes=3Θ;

System altered.

SQL> alter system set remote_login_passwordfile=exclusive SCOpe=Spfile;

System altered.

Hình 3.22. Thiết lập Oracle Data Guard (5)

- Đặt tham số fal_server là dbtest_stby và bật tự động quản lý các tệp tin ở máy

chủ dự phòng. Khi thực hiện chuyển đổi thì sẽ chuyển dbtest_stby là cơ sở dữ liệu chính.

SQL> alter system set fal_server=dbtest_stby;

System altered.

SQL> alter system set standby file_management=auto;

System altered.

Hình 3.23. Thiết lập Oracle Data Guard (6)

Hình 3.24. Thiết lập Oracle Data Guard (7)

- Thêm Iisterner cho server dự phòng, dùng để lắng nghe các kết nối đến cơ sở dữ liệụ

Hình 3.25. Thiết lập Oracle Data Guard (8)

Khóa luận tốt nghiệp

Starting ∕uθl∕app∕oracle∕product∕11.2.0∕dbtest∕bin∕tnslsnr: please wait... TNSLSNR for Linux: Version 11.2.0.1.0 - Production

System parameter file is ∕uθl∕app∕oracle∕product∕11.2.θ∕dbtest∕network∕admiπ∕lis tener.ora

Log messages written to ∕u01∕app∕oracle∕diag∕tnslsrir∕ip-172-31-31-199∕llstener∕a lert/log.xml

Listening on: (DESCRIPTION=(AĐRESS-(PROTOC0L=tcp)(HOST-172.31.31.199)(PORT-1521 )))

Listening on: (DESCRIPTION=(AĐRESS=(PROTOCOL=Ipc)(KEY=EXTPROC1521)))

Connecting to (DESCRIPTION=(AĐRESS=(PROTOCOL=TCP)(H0ST=172.31.31.199)(P0RT=1521 )))

STATUS of the LISTENER

LISTENER

TNSLSNR for Linux: Version 11.2.0.1.0 - Production 11-MAY-2Θ2Θ 21:37:47

Θ days Θ hr. θ min. 0 sec off

ON: Local OS Authentication

OFF ∕u01∕app∕oracle∕product∕11.2.0∕dbtest∕network/admln/li ∕uθl∕app∕oracle∕diag∕tnslsnr∕ip-172-31-31-199∕listener Alias Version Start Date Uptime Trace Level Security SNMP

Listener Parameter File

Stener.ora Listener Log File

∕alert∕log.xml

Listening Endpoints Summarỵ..

(DESCRIPTION=(AĐRESS=(PROTOCOL=tcp)(H0ST=172.31.31.199)(P0RT=1521))) (DESCRIPTION=(AĐRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

Services Summarỵ..

Service "dbtest stby,' has 1 instance(s).

Instance "dbtest", status UNKNOWN, has 1 handler[s) for this servicẹ.. The command completed successfully

Hình 3.26. Thiết lập Oracle Data Guard (9)

- Tạo tệp tin điều khiển và tệp tin khởi tạo hệ thống cho server dự phòng.

SQL> alter database create standby controlfile as '∕uθl∕app∕control01.Ctl'; Database altered.

SQL> create pfile='∕u01∕app∕init.orá from spfile; File created.

Hình 3.27. Thiết lập Oracle Data Guard (10)

- Chuyển các tệp tin cần thiết sang server dự phòng và tạo cấu trúc thư mục giống như server chính. Tiến hành bật cơ sở dữ liệụ

[oracle@ip-172-31-39-15 -]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.Θ.1.0 Production on Sun Jun 7 06:53:06 2020 Copyright (c) 1982, 2ΘΘ9, Oraclẹ All rights reserved.

Connected to an idle instancẹ

SQL> startup nomount pfile='∕uΘl∕init.orá; ORACLE instance started.

Total System Global Area 413372416 bytes

Fixed Size 2213896 bytes

Variable Size 314574840 bytes Database Buffers 92274688 bytes Redo Buffers 4308992 bytes

Hình 3.28. Thiết lập Oracle Data Guard (11)

- Sử dụng công cụ RMAN để tự động sao chép các datafile, redo log,... lên máy

chủ dự phòng.

[oracle@ip-172-31-24-121 ~]$ rman target sys∕123456<adbtest auxiliary sys∕123456<a dbteststby;

Recovery Manager: Release 11.2.0.l.θ - Production on Sun Jun 7 07:68:11 2026 Copyright (c) 1982, 2609, Oracle and/or its affiliates. All rights reserved.

connected to target database: DBTEST (DBID=1432594625)

connected to auxiliary database: DBTEST (not mounted)

RMAN> DUPLICATE TARGET DATABASE

2> FOR STANDBY

3> FROM ACTIVE DATABASE 4> DORECOVER

5> SPFILE

6> SET db_unique_name='dbtest_stby■

7> SET logarchivedest2=,SERVICE=dbtest ASYNC VALIDFOR=(ONLINELOGFILE,PRIMAR YROLE) DB∪NIOUENAME=dbtest,

8> SET FALSERVER='dbtest'

Hình 3.29. Thiết lập Oracle Data Guard (12)

- Sau khi quá trình hoàn tất thì đã có cơ sở dữ liệu trên máy chủ dự phòng.

c. Đồng bộ dữ liệu thời gian thực giữa hai cơ sở dữ liệu

- Bắt đầu đồng bộ các dữ liệu thay đổi ở cơ sở dữ liệu chính lên cơ sở dữ liệu dự phòng.

SOL> STARTUP NOMOUNT: ORACLE instance started.

Total System Global Area 413372416 bytes

Fixed Size 2213896 bytes

Variable Size 339746664 bytes

Database Buffers 67168864 bytes

Redo Buffers 4368992 bytes

SQL> ALTER DATABASE MOUNT STANDBY DATABASE; Database altered.

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;

Hình 3.30. Thiết lập Oracle Data Guard (13)

- Các tệp tin nhật ký sẽ bắt đầu được chuyển đến cơ sở dữ liệu dự phòng và áp dụng các thay đổị Giá trị cột Applied là “YES” là đã áp dụng xong, còn nếu là “IN- MEMORY” thì nghĩa là đã được truyền và đang đợi để áp dụng.

Khóa luận tốt nghiệp

SEQUENCE# FIRSTTIM NEXT TIME APPLIED

4Θ Θ7∕MAY∕2Θ Θ7∕MAY∕2Θ YES

41 07∕MAY∕2Θ Θ7∕MAY∕20 YES

42 07∕MAY∕2Θ Θ7∕MAY∕2Θ YES

43 07∕MAY∕2Θ 07∕MAY∕2Θ YES

44 07∕MAY∕2Θ Θ7∕MAY∕2Θ YES

45 Θ7∕MAY∕2Θ Θ7∕MAY∕2Θ YES

46 07∕MAY∕2Θ 07∕MAY∕2Θ YES

47 07∕MAY∕2Θ 07∕MAY∕2Θ IN-MEMORY

Hình 3.31. Thiết lập Oracle Data Guard (14)

3.1.4.3. Thực hiện thử nghiệm chuyển đổi vai trò giữa hai cơ sở dữ liệu

Thực hiện chuyển đổi vai trò giữa hai CSDL, chuyển CSDL chính thành dự phòng và ngược lạị

- Thực thi câu lệnh để chuyển vai trò cho CSDL chính thành dự phòng.

SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO STANDBY;

Database altered.

Hình 3.32. Thiết lập Oracle Data Guard (15)

- Tắt CSDL đi và mở lại, kiểm tra vai trò sẽ thấy chuyển sang vai trò là PHYSICAL STANDBY” - dự phòng.

SQL> shutdown LtMnediate; 0RA-B15B7: database not mounted

ORACLE instance shut down.

SQL> STARTUP N0M0UNT;

ORACLE instance started.

Total System Olobal Area 413372416 bytes

Fixed Size 2213896 bytes

variable size 339748664 bytes

Database Buffers 67108864 bytes

Redo Buffers 4388992 bytes

SQL> ALTER DATABASE MOUNT STANDBY DATABASE; Database altered.

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;

Database altered.

SQL> select database role from Vidatabase; DATABASE ROLE

PHYSICAL STANDBY

Hình 3.33. Thiết lập Oracle Data Guard (16)

ΞQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY; Datiibflie Altered,

Hình 3.34. Thiết lập Oracle Data Guard (17)

- Tắt CSDL đi và mở lại, kiểm tra vai trò sẽ thấy chuyển sang vai trò là “PRIMARY” - chính.

SQL> SHUTDOWN IMMEDIATE;

ORA Θ1109: database not open∙

Database dismounted. ORACLE instance shut down. SQ L> STARTUP;

ORACLE instance started.

Total System Global Area 413372416 bytes

Fixed Size 2213896 bytes

Variable Size 327157752 bytes

Database Buffers 79691776 bytes

Redo Buffers 4308992 bytes

Database mounted. Database opened.

SQL> select database role from Vidatabase; DATABASE ROLE

PRIMARY

Hình 3.35. Thiết lập Oracle Data Guard (18)

- Hoàn thành việc chuyển đổi vai trò giữa hai CSDL.

Neu trong trường hợp CSDL chính không thể truy cập được do sự cố gì đó, thì vẫn có thể thực hiện việc chuyển đổi vai trò, chỉ cần thực hiện trên CSDL dự phòng.

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;

Database altered.

SQL> ALTER DATABASE ACTIVATE STANDBY DATABASE; Database altered.

SOL> select databaserole from Vidatabase;

DATABASEROLE

PRIMARY

Khóa luận tốt nghiệp

3.2. Tích hợp module phát hiện tấn công máy chủ dựa trên phần mềm tường lửa

web ModSecurity

Một phần của tài liệu 817 nghiên cứu và đề xuất một số giải pháp đảm bảo an toán thông tin và dự phòng rủi ro cho cơ sở dữ liệu giao dịch của công ty cổ phần chứng khoán FPT,Khoá luận tốt nghiệp (Trang 63 - 83)

Tải bản đầy đủ (DOCX)

(99 trang)
w