Khôi phục
Parent page: Altium On-Prem Enterprise Server với Oracle Backend
Tài liệu này dành cho quản trị viên CNTT đang khôi phục dữ liệu Altium On-Prem Enterprise Server khi Enterprise Server sử dụng Oracle Database Backend. Tài liệu bao gồm thông tin chi tiết về Enterprise Server, quy trình khôi phục trong bối cảnh sử dụng Oracle, các thông tin quan trọng về yêu cầu hệ thống, cũng như một ví dụ minh họa việc khôi phục dữ liệu trên nền tảng Microsoft Windows.
Tổng quan quy trình khôi phục
Việc khôi phục Enterprise Server khi sử dụng Oracle backend phụ thuộc vào cách công ty bạn quản lý các cơ sở dữ liệu Oracle. Một số công ty chạy cơ sở dữ liệu Oracle trên hệ điều hành Windows Server, trong khi những công ty khác có hẳn trung tâm dữ liệu Oracle riêng. Quy trình khôi phục thường gồm ba bước, như minh họa trong hình sau.
Tổng quan cấp cao về quy trình khôi phục Enterprise Server và cơ sở dữ liệu Oracle.
Các giả định được sử dụng xuyên suốt tài liệu này
Mặc dù cấu hình Oracle có thể khác nhau giữa các hệ thống, tài liệu này đưa ra các giả định sau:
- Đã thực hiện sao lưu đầy đủ dữ liệu Enterprise Server và bản dump dữ liệu Oracle liên quan như được nêu trong tài liệu Sao lưu Altium On-Prem Enterprise Server với Oracle Backend.
- Việc khôi phục được thực hiện bởi quản trị viên CNTT. Tối thiểu, người thực hiện khôi phục Enterprise Server phải có quyền quản trị trên máy chủ.
- Quản trị viên cơ sở dữ liệu (DBA) nên có mặt để thực hiện import dữ liệu Oracle. Tối thiểu, người làm theo hướng dẫn này phải có toàn quyền đọc/ghi để import và chỉnh sửa cơ sở dữ liệu Oracle của công ty.
- Hướng dẫn này giả định rằng đã có sẵn một bản cài đặt Enterprise Server, được cấu hình và hoạt động với Oracle backend. (Xem phần ví dụ để biết thêm chi tiết về cách xử lý môi trường mà một Enterprise Server mới đang được triển khai trên máy và dữ liệu được import vào instance Enterprise Server đó).
- Oracle Schema và thông tin xác thực ứng dụng Oracle được dùng trên máy chủ Oracle nguồn và đích phải giống nhau.
Tổng quan cấp cao về kiến trúc Enterprise Server
Tương tự các phần mềm khác được thiết kế để chạy trên Microsoft Windows, Enterprise Server là một ứng dụng máy chủ đa luồng, đa dịch vụ. Vì tài liệu này chỉ tập trung vào các phần của Enterprise Server có thể tương tác với cơ sở dữ liệu Oracle, hình dưới đây đã được đơn giản hóa để thể hiện kiến trúc backend tổng thể của Enterprise Server.
Tổng quan cấp cao về kiến trúc Enterprise Server. Backend Storages của Enterprise Server chứa phần lớn dữ liệu nhị phân của khách hàng, trong khi Windows Services là tập hợp các dịch vụ hỗ trợ.
Tài liệu này tập trung vào Backend Storages vì dữ liệu trong khối này là phần được sao lưu, có thể được di chuyển sang máy khác, rồi khôi phục trên cùng máy hoặc máy khác. Trong Backend Storages, có thể tìm thấy các mục sau:
- Databases – chứa siêu dữ liệu như liên kết giữa footprint linh kiện và schematic symbol, các tham số, đường dẫn tệp, liên kết đến nguồn dữ liệu chuỗi cung ứng linh kiện và nhiều nội dung khác. Thông tin này có thể nằm trong cơ sở dữ liệu Firebird hoặc Oracle.
- File Storage – khu vực File Storage này lưu trữ dữ liệu nhị phân bên trong kho VCS của Enterprise Server. Dữ liệu nhị phân này bao gồm các thông tin như tài liệu dự án PCB và Schematic, footprint, symbol, Draftsman và các tài liệu Enterprise Server dạng native hoặc non-native khác.
Tổng quan cấp cao về Altium Restore Tool
Công cụ khôi phục của Altium có tên là avbackup.exe. Đây cũng là tiện ích được sử dụng cho cả mục đích sao lưu và khôi phục với Enterprise Server. Đây là một tiện ích dòng lệnh mà quản trị viên CNTT có thể chạy để khôi phục dữ liệu Enterprise Server. avbackup.exe cũng là tiện ích được dùng cho mục đích khôi phục khi Enterprise Server được cấu hình với Firebird database backend mặc định hoặc khi sử dụng Oracle database làm backend.
Khi sử dụng avbackup.exe trên một triển khai Enterprise Server dùng Oracle Database, quản trị viên cần lưu ý những điều sau:
- avbackup.exe NOTkhông hỗ trợ khôi phục siêu dữ liệu Enterprise Server vào Oracle Database. Tính năng này chỉ hoạt động trên các triển khai Enterprise Server sử dụng Firebird database backend vốn được tự động cấu hình ban đầu bởi Enterprise Server Installer.
- avbackup.exe chấp nhận tệp Zip mà chính nó tạo ra khi được dùng làm công cụ sao lưu. Tệp Zip này chứa toàn bộ dữ liệu nhị phân của Enterprise Server.
- Enterprise Server phải đang chạy. avbackup.exe sẽ tự động tắt tất cả dịch vụ của Enterprise Server (bao gồm cả dịch vụ IIS) trong quá trình khôi phục dữ liệu, sau đó khởi động lại tất cả các dịch vụ mà nó đã tắt sau khi khôi phục thành công.
Ví dụ khôi phục dữ liệu Enterprise Server với Oracle backend trên nền tảng Windows
Trong ví dụ này, hướng dẫn cũng phù hợp với các doanh nghiệp nhỏ có thể không có quản trị viên Oracle Database (DBA) chuyên trách nhưng vẫn cần khôi phục Enterprise Server và dữ liệu Oracle liên quan trên mạng của họ. Các bước sau cho thấy cách một bản sao lưu cơ bản của Enterprise Server và cơ sở dữ liệu Oracle liên quan có thể được khôi phục lên máy mới và cơ sở dữ liệu Oracle mới.
Các mục cần thiết
- Instance Enterprise Server đang hoạt động sẵn có với Oracle backend.
-
Các thư mục và nguồn dữ liệu có sẵn:
- Các thư mục nơi dữ liệu Enterprise Server và Oracle của bạn sẽ được lưu phải tồn tại sẵn, đồng thời chứa bản sao của tệp zip sao lưu Enterprise Server và tệp Oracle .DMP.
- Quyền quản trị đối với máy Host của Enterprise Server. Điều này cần thiết để chạy đúng tiện ích dòng lệnh sao lưu Enterprise Server (avbackup.exe).
-
Quyền DBA phù hợp trên máy chủ Oracle (ví dụ: thêm tài khoản Windows của người dùng vào vai trò
sysDBAtrong môi trường Windows).
Quy trình khôi phục
- Nếu chưa thiết lập instance Enterprise Server với Oracle backend, vui lòng đọc tài liệu Cài đặt Altium On-Prem Enterprise Server với Oracle Backend để xem ví dụ về cách thiết lập Enterprise Server sử dụng Oracle backend trên máy mới.
- Đến thời điểm này, bạn nên đã có một instance Enterprise Server hiện hữu với Oracle — hoặc do cài đặt mới, hoặc từ cài đặt trước đó.
-
Trên máy Host của Enterprise Server:
- Tạo một thư mục khôi phục (nên dùng các đường dẫn tệp thống nhất, ví dụ: C:\Backups). Đặt tệp Zip sao lưu Enterprise Server vào thư mục này.
- Khôi phục dữ liệu Enterprise Server bằng cách chạy công cụ avbackup.exe với quyền Admin. Công cụ này nằm trong thư mục C:\Program Files (x86)\Altium\Altium365\Tools\BackupTool.
- Tắt các dịch vụ IIS của Enterprise Server, hoặc tắt máy Host của Enterprise Server. Việc này sẽ ngăn các thao tác ghi ngoài ý muốn vào Oracle Database của bạn bởi các dịch vụ Enterprise Server.
-
Trên máy Host của Oracle Database:
-
Tạo một thư mục khôi phục và đặt tệp Oracle
.dmpvào thư mục này (nên dùng các đường dẫn tệp thống nhất, ví dụ: C:\Backups). - Xóa schema và tài khoản người dùng hiện có khỏi cơ sở dữ liệu Oracle.
-
Tạo một thư mục khôi phục và đặt tệp Oracle
Việc xóa tài khoản người dùng Oracle và schema liên quan có thể được thực hiện như sau. Trong ví dụ này, chúng ta sẽ xóa tài khoản người dùng hiện có AESUSER313 và schema liên quan của nó khỏi một Oracle Database trên Microsoft Windows:
- Khởi chạy command prompt với quyền Admin.
- Dừng các dịch vụ IIS nếu có trên máy Oracle bằng lệnh: net stop WAS, sau đó nhấn Y rồi Enter.
- Kết nối tới Oracle DB bằng cách khởi chạy một phiên SqlPlus:
sqlplus / as sysdba
shutdown immediate;
startup restrict;
- Xóa schema liên quan với Enterprise Server (trong ví dụ này AESUSER313 là tên của schema mà chúng ta muốn xóa):
drop user AESUSER313 cascade;
- kích hoạt lại DB bình thường bằng cách khởi động lại máy hoặc dùng các lệnh sau:
shutdown immediate;
startup;
-
Tạo Schema giống hệt trên Oracle Server và cấp quyền nâng cao:
- Mở command line với quyền admin và nhập:
sqlplus / as sysdba;
CREATE user AESUSER313 identified by “Altium”;
GRANT ALL PRIVILEGES TO AESUSER313;
GRANT IMP_FULL_DATABASE TO AESUSER313;
- Ngoài ra, bạn có thể tạm thời cấp vai trò DBA cho người dùng này, import tệp rồi thu hồi quyền này như minh họa bên dưới:
GRANT DBA TO AESUSER313;
- Sau khi import DB thành công, thu hồi quyền DBA:
revoke DBA from AESUSER313;
-
Khôi phục dữ liệu Oracle (phần này giả định rằng tài khoản người dùng và schema đều có tên là AESUSER313 và có mật khẩu Altium):
- Khởi chạy command prompt với quyền Admin
- Dừng IIS Servers bằng lệnh:
net stop WAS
- Import dữ liệu Oracle. Ví dụ một lệnh import là:
imp AESUSER313/Altium@xe file=c:\Backups\AESUSER313.dmp log=c:\Backups\AESUSER313_import.log fromuser=AESUSER313 touser=AESUSER313
trong đó,
AESUSER313 – người dùng có đầy đủ quyền trên schema và có quyền truy cập DB.
Altium – mật khẩu cho tài khoản người dùng Oracle được liên kết với Enterprise Server.
xe – tên dịch vụ mạng của CSDL đích được chứa trong tnsnames.ora.
file = c:\Backups\AESUSER313.dmp – vị trí của bản sao lưu.
log = c:\Backups\AESUSER313_import.log – nhật ký khôi phục (tùy chọn).
fromuser=AESUSER313 – chủ sở hữu của schema sao lưu.
touser=AESUSER313 – chủ sở hữu mới của schema (nếu chủ sở hữu khác nhau, bạn phải tạo người dùng mới với các quyền và vai trò phù hợp).
-
Xác minh tính toàn vẹn dữ liệu.
- Kiểm tra tệp tnsname.ora. Bạn nên cập nhật tên dịch vụ mạng (nếu bạn đã thay đổi máy chủ CSDL).
- Xác thực cài đặt máy chủ IIS. Kiểm tra cột “Host name” trong bindings trong IIS Manager để bảo đảm là giá trị hiện tại. Phải là Tên miền đủ điều kiện (FQDN) hiện tại của Enterprise Server của bạn.
-
Kiểm tra các giá trị của những tham số sau trong tệp C:\Program Files (x86)\Altium\Altium365\LocalVault.ini.
- Domain – tên miền của bạn.
- WebsiteDomain – FQDN của Enterprise Server của bạn.
- DataSourceType=Oracle – nếu sử dụng Oracle DB.
- User=AESUSER313 – chủ sở hữu của schema.
- Password=Altium – mật khẩu người dùng do DBA xác định.
- DBLocation=FQDN hoặc ip_address:1521 – địa chỉ của máy chủ CSDL của bạn.
- DatabaseName=xe – tên dịch vụ mạng hiện tại của CSDL, được chứa trong tnsnames.ora.
Kết luận
Mặc dù ví dụ nêu trên bao gồm các chi tiết bổ sung liên quan đến việc kết nối và thao tác với Oracle Database, chỉ có ba bước chính để khôi phục dữ liệu Enterprise Server của bạn:
- Bước 1 là dừng các dịch vụ IIS và các Application Pool IIS của Enterprise Server.
- Bước 2 là khôi phục dữ liệu của Enterprise Server.
- Bước 3 là khôi phục dữ liệu Oracle liên kết với Enterprise Server.
Thực hiện quy trình này theo đúng thứ tự được mô tả sẽ giúp giảm đáng kể khả năng hỏng dữ liệu do sự không khớp giữa cơ sở dữ liệu Oracle và dữ liệu nhị phân của Enterprise Server.