ASM “phát tán” file dữ liệu Oracle qua tất cả ổ đĩa logic trong cùng một nhóm, do đó loại bỏ được mọi Hotspot là các vùng lưu trữ có nhiều bảng được dùng thường xuyên nhất.. Trong bài nà
Trang 1Những cải tiến trong ASM
Giới thiệu
ASM nâng cao khả năng thực thi cung cấp từ các đĩa thô, giúp việc quản trị các đĩa này không còn khó khăn như trước Ngoài ra, ASM còn cung cấp chính sách ánh xạ lưu trữ, có thể được cấu hình ở mức file thay vì mức ổ theo cách truyền thống của trình quản lý đĩa Các file ánh xạ hoặc không ánh xạ trong một nhóm đĩa ASM đều có thể cùng tồn tại
ASM “phát tán” file dữ liệu Oracle qua tất cả ổ đĩa logic trong cùng một nhóm, do đó loại bỏ được mọi Hotspot (là các vùng lưu trữ có nhiều bảng được dùng thường xuyên nhất) Nhưng tuyệt vời nhất là nó cho phép thêm hoặc xoá ổ đĩa trực tuyến Tất cả chức năng mới được bổ sung trong khi người dùng không phải trả thêm chi phí phụ nào Bất cứ khi nào cần sử dụng hệ thống file theo nhóm, ASM luôn là thành phần quan trọng, như chính tài nguyên của nó (ổ đĩa, file) ASM
có thể chia sẻ và phù hợp với kiến trúc lưu trữ chia sẻ, cho dù nó là clusterware RAC hay non-RAC
ASM được triển khai trên diện rộng ở các công ty có dữ liệu lớn và tăng lên không ngừng như các hãng di động và viễn thông, trên nhiều thị trường bán lẻ lớn như Amazon và cả trong một số ứng dụng ngân hàng Cá nhân tôi nghĩ rằng, tương lai ASM có thể thay thế tất cả sản phẩm quản lý lưu trữ dữ liệu của các hãng sản xuất bây giờ
Trong bài này, chúng ta sẽ được biết đến một số thành phần mới của ASM phiên bản 10G R2 và thảo luận chi tiết hơn về một số thành phần chúng ta mới khám phá gần đây
Thành phần mới
1, Release 2 mở rộng tính năng cho ASM, cho phép hỗ trợ đa phiên bản cơ sở
dữ liệu Nhưng hãy thận trọng, vì ASM chỉ sử dụng tính năng của phiên bản thấp nhất Có nghĩa là, nếu bạn đang chạy cơ sở dữ liệu 10.2 trên một phiên hoạt động ASM v10.1, ASM sẽ không dùng tính năng của 10.2, và ngược lại Khi truy vấn bảng ảo v$ASM_CLIENT, bạn có thể thấy hai cột phụ:
compatible_Version và software_version Chúng có chức năng kết hợp chặt
Trang 2chẽ thành phần này
SQL> select * from v$asm_client;
GROUP_NUMBER INSTANCE_NAME DB_NAME
STATUS
- - - -
SOFTWARE_VERSION
-
COMPATIBLE_VERSION
-
1 +ASM1 QPRV CONNECTED
10.1.0.2.0
10.2.0.0.0
2, Release 2 cũng hỗ trợ chức năng hợp nhất các cơ sở dữ liệu trên một nút đơn Có nghĩa là, với các phiên bản 10G trước, bạn không thể quản lý cơ sở dữ liệu trên phiên đơn và các phiên RAC của cơ sở dữ liệu trên một nút đơn dùng ASM Nhưng trong 10G R2, một phiên ASM trên một nút có thể quản lý lưu trữ kết hợp các hoạt động cơ sở dữ liệu khác nhau đang diễn ra trên nút Chức năng mới này giúp việc quản trị lưu trữ của DBA (quản trị viên cơ sở dữ liệu) trở nên đơn giản hơn nhiều Nếu đã sử dụng hai chương trình ASM để quản trị
đa cơ sở dữ liệu làm việc trên một nút, bạn cần chuyển một sang chương trình đơn ASM có các số nhị phân 10G R2 mới Nếu không có bản nâng cấp này, bạn sẽ không có cơ hội đơn giản hoá công tác quản trị trên một phiên làm việc ASM đơn
3, Oracle Database 10G Release 2 cung cấp tiện ích giao diện dòng lệnh ASM (ASMCMD) để có thể truy cập và quản lý file từ cửa sổ lệnh Command
Prompt Các phiên bản trước phải sử dụng SQL/PL *Plus hoặc OEM
Một số ví dụ về giao diện dòng lệnh này:
$ asmcmd
asmcmd: command disallowed by current instance type
# ORACLE_SID is wrong
$ echo $ORACLE_SID
ORCL
$ export ORACLE_SID=+ASM1
$ asmcmd
ASMCMD>
Trang 3Nhận dạng nhóm đĩa, dùng ASMCMD:
ASMCMD> lsdg
State Type Rebal Unbal Sector Block
AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Name
MOUNTED EXTERN
N N 512 4096 1048576 122876 46775 0 46775
0 DATABASE_DG/
ASMCMD> lsct
DB_Name Status Software_Version Compatible_version
Instance_Name
ORCL CONNECTED 10.2.0.1.0 10.2.0.1.0 ORCL1
Nhận dạng file dữ liệu, dùng ASMCMD:
ASMCMD> cd +DATABASE_DG/qprv
ASMCMD> ls
CONTROLFILE/
DATAFILE/
ONLINELOG/
PARAMETERFILE/
TEMPFILE/
devices_01.dbf
operations_01.dbf
users01.dbf
Tìm vị trí file điều khiển được đặt trên ASM:
ASMCMD> cd CONTROLFILE/
ASMCMD> ls
Current.260.563388683
Current.261.563388685
Current.262.563388685
Thu hồi lại không gian đĩa, dùng ASMCMD:
Giả sử rằng bạn đang có 3 nút phiên RAC, cơ sở dữ liệu lưu trữ các bản log và tập hợp sao lưu được đặt trên vùng lưu trữ ASM Sau một thời gian bạn thấy chúng không còn cần thiết và muốn xoá chúng để thu hồi lại không gian đĩa
Trang 4trong ASM Thực hiện như sau:
ASMCMD > CD +BACKUPDEST # thay đổi nhóm đĩa
ASMCMD > PWD # thư mục hiện tại
ASMCMD > find -t BACKUPSET.* # để tìm các file tập hợp sao lưu trong nhóm đĩa
Sau khi các file được đưa lên danh sách, bạn có thể dùng lệnh rm của hệ điều hành để xoá chúng và dùng RMAN để kiểm tra chéo các bản sao lưu đã xoá
Chú ý là, cờ -t có thể có các giá trị như DATAFILE, ARCHIVELOG,
CONTROLFILE, ONLINELOG
ASMCMD> help
asmcmd [-p] [command]
Các biến môi trường ORACLE_HOME và ORACLE_SID xác định phiên làm việc chương trình đang kết nối tới Còn ASMCMD thiết lập một kết nối truyền lại đến nó, tương tự như trong SQLPLUS/ AS SYSDBA Người dùng phải là một thành viên trong nhóm quản trị hệ thống (SYSDBA)
Tuỳ chọn -p cho phép thư mục hiện tại được hiển thị trong cửa sổ lệnh
Command Prompt, tương tự như:
ASMCMD [+DATAFILE/ORCL/CONTROLFILE] >
[command] mô tả một trong các lệnh sau, đi kèm với các tham số của nó (Gõ “help [command]” để xem thêm phần trợ giúp về câu lệnh ASMCMD nếu cần)
Các lệnh:
cd
du
find
help
ls
lsct
lsdg
mkalias
Trang 5mkdir
pwd
rm
rmalias
4, 10G R2 cung cấp phương thức linh hoạt hơn trong việc chuyển file giữa các
cơ sở dữ liệu và trong nội bộ một cơ sở dữ liệu: Có một cách khác thú vị hơn trong chuyển file giữa các nhóm đĩa ASM (ASM Disk Group) là sử dụng RMAN RMAN là thành phần quan trọng của hoạt động quản lý lưu trữ tự động Automatic Storage Management Nó chịu trách nhiệm theo dõi tên file ASM và xoá các file ASM không còn dùng đến Từ sau khi không thể truy cập file ASM qua giao diện hệ điều hành thông thường, RMAN trở thành phương tiện đắc dụng trong copy file ASM
Tuy nhiên, ở một số trường hợp có thể bạn muốn chuyển file trên server cơ sở
dữ liệu từ xa, không dùng RMAN hay cài đặt datagaurd Khi đó, chúng ta có gói DBMS gọi là DBMS_FILE_TRANSFER Phiên bản 10G R2 hỗ trợ file
“ASM to OS” và “OS File to ASM” Các phiên bản trước của 10G cũng đã hỗ trợ hình thức truyền tải file “ASM to ASM” (giữa hai file ASM) và “OS to OS” (giữa hai file hệ điều hành)
Sử dụng chức năng này, DBA có thể chuyển file dữ liệu từ bên trong Oracle ra
mà không cần đăng nhập “một cách vật lý” vào bản thân hệ điều hành Ngoài
ra, chức năng này còn cung cấp thêm một số tuỳ chọn cho hoạt động quản trị
cơ sở dữ liệu chung, như quản lý lưu trữ đơn giản (cần giải phóng không gian đĩa) Chúng ta hãy xem ví dụ sau để hiểu cách chuyển một file ASM tới thư mục hệ điều hành như thế nào:
SQL> select tablespace_name,file_name from dba_Data_files;
TABLESPACE_NAME
-
FILE_NAME
-
USERS
+DATABASE_DG/qprv/users01.dbf
SYSAUX
+DATABASE_DG/qprv/sysaux01.dbf
UNDOTBS1
+DATABASE_DG/qprv/undotbs01.dbf
Trang 6SYSTEM
+DATABASE_DG/qprv/system01.dbf
UNDOTBS2
+DATABASE_DG/qprv/undotbs02.dbf
DEVICES
+DATABASE_DG/qprv/devices_01.dbf
SERVICES
+DATABASE_DG/qprv/services_01.dbf
OPERATIONS
+DATABASE_DG/qprv/operations_01.dbf
BBIDS_TBS
+DATABASE_DG/qprv/bbids_tbs_01.dbf
USERS
+DATABASE_DG/qprv/users02.dbf
TEST
+DATABASE_DG/qprv/test.dbf
11 rows selected
SQL> create or replace directory oracle_10g as '+DATABASE_DG/qprv/'; Directory created
SQL> grant read,write on directory oracle_10g to ram;
Grant succeeded
SQL> create or replace directory oracle_dest as '+db04/oradata/qprv/';
Directory created
SQL> grant read,write on directory oracle_dest to ram;
Grant succeeded
SQL> ALTER DATABASE DATAFILE '+DATABASE_DG/qprv/test.dbf' offline;
Database altered
Bây giờ, copy file từ nhóm đĩa ASM đích tới thư mục hệ thống file OS bình thường
BEGIN
DBMS_FILE_TRANSFER.COPY_FILE(
source_directory_object => 'ORACLE_10G',
source_file_name => test.dbf,
destination_directory_object => 'ORACLE_DEST',
destination_file_name => 'TEST.DBF);
END;
Database altered
Trang 75, Hỗ trợ ASM/XDB FTP là một chức năng mới khác, cho phép sử dụng XDB
và ASM với giao diện người dùng để lấy file vào và đưa file ra vùng lưu trữ được quản lý ASM Khi chọn thành phần XML Database trong quá trình cài đặt, bạn có thể tạo một thư mục ASM ảo Thư mục này rỗng và được đặt trên /sys/asm, bên trong cây phân tầng XML Database Bất kỳ hoạt động nào trên thư mục ảo ASM đều được điều khiển bởi ASM Quản trị viên có thể khai thác chức năng này để cấu hình các thư mục khác nhau với các nhóm đĩa khác
nhau Một thư mục nhóm đĩa có thể có các thư mục con bên trong với một vài file, folder Thành phần FTP khá hữu ích trong việc chuyển file vào/ra các thư mục này
6, Các bảng ảo và cột ASM mới:
V$asm_disk_stat và v$asm_diskgroup_stast
Hai bảng ảo này giống y hệt nhau, lần lượt được gọi là v$asm_disk và v$asm_diskgroup, nhưng lấy dữ liệu từ bộ nhớ thay vì biến đổi từ nhóm đĩa Theo một số kinh nghiệm thực tiễn cho biết thì, bạn nên truy vấn v$asm_disk và v$asm_diskgroup, chúng khá thú vị, nhưng không phải là vào giờ cao điểm
Các cột mới thêm vào v$asm_diskgroup:
USABLE_FREE_SPACE: Tổng không gian sử dụng còn trống Ở một
số phiên bản trước, không gian trống được tính từ bảng ảo này không được ánh xạ vào tài khoản
REQUIRED_MB_FREE: Cột này là thông số không gian ước lượng đòi hỏi trong tiến trình phục hồi ổ đĩa khi một hoặc một số đĩa bị hỏng
REDUNANCE_LOWERED: Khi một vùng file dữ liệu không được ánh
xạ, vùng dự trữ sẽ giảm theo mức độ do DBA quy định Cột này được thêm vào bảng ảo v$asm_file để nhận dạng quá trình giảm này trong vùng dự trữ Giá trị cho cột này là YES hoặc NO
Kết luận
Các thành phần mới trong ASM giúp công việc quản trị của DBA trở nên đơn giản hơn, nhất là quản lý đa phiên trên cùng một nút Bạn không cần phải dùng
Trang 8đến bất kỳ phần mềm của nhóm thứ ba nào trong quản lý bộ đĩa ASM và hệ thống file cơ sở dữ liệu Chức năng tự động bổ sung giúp ASM trở thành giải pháp ổn định, hiệu quả và kinh tế hơn
T.Thu (Theo Database)