跳轉到內容

OpenClinica 使用者手冊/備份和恢復

來自華夏公益教科書

OpenClinica 的備份和恢復

[編輯 | 編輯原始碼]

備份您的 OpenClinica 設定是必須的。不僅如此:您還必須練習恢復備份。您知道為什麼,所以請這樣做。在發出這些嚴重警告之後:備份您的 OpenClinica 很簡單!只需要備份兩件事:您的資料庫和您的研究檔案。

在開發週期中進行備份

[編輯 | 編輯原始碼]

在每個步驟中都進行備份,這樣您就可以在出錯時備份到更早的步驟(例如,一旦您輸入了資料,就沒有簡單的方法可以刪除該資料,或者在新增規則後刪除規則)。

在以下這些點進行備份

  1. 空資料庫
  2. 研究建立
  3. CRF
  4. 事件
  5. 規則

除了進行備份之外,請不要忘記記錄如何配置研究。假設您一直在測試機器上工作,那麼將研究移至生產環境時,您需要遵循本指南。該指南可以是一個電子表格,其中包含“建立研究”部分的配置詳細資訊,以及一個列表,列出事件、它們的配置和每個事件中的 CRF。

Windows 備份指令碼

[編輯 | 編輯原始碼]

OpenClinica 網站包含一個用於 Windows 的 OpenClinica 備份指令碼示例。

資料庫的備份

[編輯 | 編輯原始碼]

Postgres 帶有一系列命令列實用程式,其中之一是 pg_dump。該實用程式會生成一個(龐大的)文字檔案,其中包含重新建立您的 openclinica 資料庫的命令,以及對所有表的插入操作。

假設您的資料庫名為“openclinica”,您在 2010 年 7 月 14 日進行備份。在 Linux 中,您可以登入到您的伺服器並輸入

sudo -u postgres /usr/bin/pg_dump -U postgres openclinica > pg_dump_openclinica_20100714

語法很簡單:pg_dump 後面是資料庫的名稱,然後是轉儲檔案的名稱。使此檔案的名稱儘可能具有描述性,因此不要只使用“OC”或“backup”,並且始終新增日期。作為最後一步,您必須將轉儲檔案從伺服器上移出並將其儲存在安全的地方。我再說一遍:不要將其留在您的伺服器上!

在 Windows 中執行類似操作的命令(您的路徑可能會有所不同)

“C:\Program Files (x86)\PostgreSQL\8.4\bin\pg_dump.exe” --host localhost --port 5432 --username clinica --format custom --blobs --verbose --file C:\oc\backup\pg_dump_openclinica_20100714 openclinica

研究(資料)目錄的備份

[編輯 | 編輯原始碼]

您所有的 XL 格式的 CRF、XML 規則檔案、附加到 CRF 的檔案以及生成的 資料集和元資料集都儲存在 openclinica.data 目錄中。該目錄位於 /usr/local/tomcat/(或 Windows 中的 C:\oc\tomcat)中。要完全備份 OpenClinica,您應該將此目錄備份到不同伺服器上的安全位置。在 Linux 中,您可以使用一行命令將此目錄打包成 tar 檔案

tar -cvvf oc_data_20100714.tar /usr/local/tomcat/openclinica.data

在 Windows 中,您可以使用資源管理器複製該目錄。

應用程式(webapps)目錄的備份

[編輯 | 編輯原始碼]

為了更進一步,您可以備份 webapps 中的應用程式目錄。openclinica(或其他名稱)目錄位於 /usr/local/tomcat/webapps/(或 Windows 中的 C:\oc\tomcat\webapps\)中。

只備份您的 datainfo.properties

[編輯 | 編輯原始碼]

與其備份整個應用程式(webapps)目錄(在使用過程中,整個目錄通常不會更改),不如備份您可能更改的唯一檔案 - 配置檔案 datainfo.properties。通常,此檔案中的資訊在 OpenClinica 安裝完成後不會發生太大變化。但是,如果發生崩潰,如果您有埠和郵件配置等設定,將會為您節省大量時間,因此在 Linux 中輸入

tar -rf oc_data_20100714.tar /usr/local/tomcat/webapps/OpenClinica/WEB-INF/classes/datainfo.properties

恢復資料庫

[編輯 | 編輯原始碼]

恢復到不同名稱的例項

[編輯 | 編輯原始碼]

如果您想將原始例項(例如 openclinica)恢復到不同名稱的例項(例如 openclinica2),只需將資料恢復到不同名稱的資料庫(openclinica2),重新命名資料目錄(openclinica2.data)和 webapps 目錄(openclinica2)。有關更多資訊,請參閱多個例項頁面(例如,在重新啟動新例項之前,您可能需要修改日誌目錄,使其記錄到與原始例項不同的目錄中)。

停止 OpenClinica

[編輯 | 編輯原始碼]

只有在 OpenClinica 應用程式沒有使用資料庫時才能進行恢復。因此,必須暫時停止 OpenClinica 應用程式或 Tomcat。最簡單的方法可能是使用管理頁面停止特定應用程式(Tomcat 管理員操作指南)。或者,您可以停止 Tomcat 本身(在 Windows 中,可以透過 Windows 服務或Windows 命令列來完成)。

從轉儲檔案恢復

[編輯 | 編輯原始碼]

要恢復資料庫,您必須刪除現有的 openclinica 資料庫,重新建立它,並“執行”轉儲檔案。

在 Linux 中,您可以從命令列執行此操作

sudo -u postgres/usr/bin/psql
drop database openclinica 
create database openclinica with encoding='UTF-8' owner=clinica;

然後退出 psql(\q)並轉到轉儲檔案所在的目錄,並輸入(作為 postgres 使用者)

/usr/bin/psql openclinica < pg_dump_openclinica_20100714

此步驟將恢復您的資料庫。

此過程也可以在 Windows 上使用 PGAdmin 客戶端完成。

  1. 開啟 PGAdmin,瀏覽到並右鍵單擊 openclinica 資料庫(物件瀏覽器,伺服器,Postgres,資料庫,openclinica),選擇“屬性”,然後選擇“刪除/刪除”(或“屬性”並更改名稱,如果您想保留當前資料庫)。
  2. 右鍵單擊“資料庫”,選擇“新建資料庫”,輸入名稱“openclinica”,然後單擊“確定”。
  3. 右鍵單擊新建立的 openclinica 資料庫,選擇“恢復”,找到備份檔案並單擊“確定”。

建立一個空的 OpenClinica 資料庫

[編輯 | 編輯原始碼]

要建立一個新的空 OpenClinica 資料庫,您可以跳過上述步驟中的最終恢復步驟。當 OpenClinica 啟動時,它將在空資料庫中建立一個新的資料庫結構(包括重置管理員密碼)。上傳的檔案也可以透過刪除 openclinica.data 目錄的內容來清除。

恢復研究(資料)目錄

[編輯 | 編輯原始碼]

將資料目錄恢復到 /usr/local/tomcat/(或 Windows 上的 C:\oc\tomcat)

恢復應用程式(webapps)目錄

[編輯 | 編輯原始碼]

將應用程式目錄恢復到 /usr/local/tomcat/webapps/(或 C:\oc\tomcat\webapps\)

華夏公益教科書