Ở bài viết này, tôi sẽ hướng dẫn bạn thủ tục để chuyển database của bạn về chế độ Archive log mode


   Kiểm tra xem chế độ Archive log mode đã được bật hay chưa

Đầu tiên, bạn hãy login vào database bằng user SYS

sqlplus / as sysdba

Sau đó, bạn hãy kiểm tra xem database của bạn đang ở chế độ nào (No archive log mode hay Archive log mode)

archive log list

Kết quả như hình trên có nghĩa là database của bạn đang ở chế độ No archive log mode


   Các bước tiến hành

Bây giờ tôi sẽ chuyển database về chế độ Archive log mode theo các bước như sau:

Đầu tiên, tôi sẽ cần tạo ra một thư mục (hay phân vùng) để lưu trữ archive log trên hệ điều hành.

# mkdir -p /backup/archive
# chown oracle:oinstall /backup/archive

Như các bạn thấy, ở đây tôi sẽ sử dụng thư mục /backup/archive để lưu trữ archive log

Tiếp theo tôi sẽ thay đổi tham số để Oracle sẽ ghi archive vào thư mục này

SQL>  alter system set log_archive_dest_1='location=/backup/archive/';
System altered.

SQL> alter system set log_archive_dest_state_1=enable;
System altered.

Tiếp tục, tôi sẽ shutdown instance và đưa database về trạng thái mount

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

Đưa về trạng thái mount

SQL> startup mount
ORACLE instance started.

Total System Global Area 2483027968 bytes
Fixed Size		    8795808 bytes
Variable Size		  671091040 bytes
Database Buffers	 1795162112 bytes
Redo Buffers		    7979008 bytes
Database mounted.

Bây giờ tôi sẽ kích hoạt chế độ Archive log mode lên bằng câu lệnh:

SQL> alter database archivelog;
Database altered.

Và cuối cùng là open database.

SQL> alter database open;   
Database altered.

   Kiểm tra lại kết quả

Như vậy là tôi đã cấu hình xong database về trạng thái Archive log mode, các bước kiểm tra như sau

Đọc thêm  Cấu hình Streaming Replication trong PostgreSQL 13

Đầu tiên bạn dùng câu lệnh archive log list để xác nhận lại chế độ database đang hoạt động

Như các bạn thấy, database hiện đã ở chế độ Archive log mode và thư mục để chứa archive log đó là /backup/archive.

Bước tiếp theo các bạn kiểm tra xem archive log có ghi được xuống thư mục /backup/archive hay không bằng câu lệnh sau:

$ cd /backup/archive/
$ ls -l
total 0

Như các bạn thấy, hiện vẫn chưa có archive log nào trong thư mục /backup/archive. Để có archive log trong thư mục này, Oracle phải ghi đầy 1 redo log group trước đã. Tôi sẽ thử dùng câu lệnh sau để ép Oracle ghi archive log như sau:

SQL> alter system switch logfile;
System altered.

Và giờ tôi sẽ kiểm tra lại

$ ls -ltr
total 54068
-rw-r-----. 1 oracle oinstall 55363072 Jun  8 22:44 1_400_1062435207.dbf

Kết quả như trên là OK rồi đó.

Chú ý:

Trên thực tế, người ta thường lưu trữ Archive log trên phân vùng Fast Recovery Area (hay FRA). Đây là 1 phân vùng được chỉ định cho Oracle Database để chuyên lưu các file backup, archive log hay flashback log,… những file có tác dụng khôi phục database.

Bạn có thể cấu hình để lưu Archive log vào phân vùng FRA bằng cách chỉnh sửa tham số như sau:

SQL> alter system set log_archive_dest_1='location=USE_DB_RECOVERY_FILE_DEST';

Nếu bạn có thắc mắc gì, hãy comment ở phía dưới bài viết hoặc gửi cho tôi trong group “Kho tài liệu kiến thức Database” nhé. Trong đó tôi cũng post khá nhiều tài liệu về Database hay đấy.

Đọc thêm  Các thuật ngữ thường dùng trong chiến lược backup database

Nguồn: https://dangxuanduy.com/

Xin cho tôi được biết, bạn cảm thấy bài viết này như thế nào? Ý kiến của bạn sẽ giúp tôi nâng cao chất lượng bài viết của mình.

    Hãy chia sẻ bài viết này nếu bạn thấy có ích nhé

     

    0 0 votes
    Article Rating
    Subscribe
    Notify of
    guest
    0 Comments
    Inline Feedbacks
    View all comments