用友通系列軟件包括財務通\友通,備份時均存為兩個文件.lst和.ba_,其中.lst 文件為數(shù)據(jù)庫索引文件,保存帳套的路徑和帳套號;.ba_文件為帳套數(shù)據(jù)文件,保存帳套的所有數(shù)據(jù).恢復時系統(tǒng)管理通過打開.lst文件把放在同一文件夾下的.ba_文件引入數(shù)據(jù)庫 利用該原理可做: 1.改變帳套存放路徑 2.改變帳套號 作法:1.備份并刪除帳套,復制備份到e:\A, 2.新建一帳套,帳套路徑為E:\ADMIN, 3.建完后選擇備份到E:\B,把e:\B\*.lst復制到e:\A覆蓋原文件, 4.用系統(tǒng)管理引入e:\A\*.lst即可 二.未備份帳套的恢復 1.把帳套存放路徑下的文件夾整個備份,例帳套號為001,則文件夾為ZT001 2.重裝完軟件后,建立001帳套 3.右鍵點擊桌面右下角的服務器圖標,點擊停用 4.把zt001復制到新建001帳套的路徑下,會停示是否覆蓋,點擊確定 5.重啟操作系統(tǒng) 注意:未建新帳套直接復制舊數(shù)據(jù)到ADMIN中,是不行的,因為這樣做并沒在數(shù)據(jù)庫中建立關聯(lián). 用友軟件 SQL Server 備份及恢復的幾種方法 SQL Server 備份及恢復的幾種方法 隨著SQL Server 版軟件越來越多,與此相關的數(shù)據(jù)備份與恢復的問題也越來越多,我們在解決問題的過程中總結了一些經(jīng)驗如下: 一、備份各種形式 ①從系統(tǒng)管理里作備份,包括帳套的備份和年度帳的備份,這種份的優(yōu)點是簡單,易操作,壓縮性好,占用硬盤空間小,但速度慢,并且如果是軟件出現(xiàn)故障的情況下,可能無法進入系統(tǒng)管理.②從Enterprise Manager里做數(shù)據(jù)庫的備份.每個數(shù)據(jù)庫都有一個單獨的備份.這種備份的優(yōu)點是備份速度快,如果對SQL Server有一定了解的話,也是很簡單的.③如果SQL Server無法啟動的話,上述兩種方法都是無效的,只能采用復制物理文件的方法,把用戶帳套的ufdata.mdf ufdata.ldf 和ufsystem.mdf 和ufsystem.ldf 二、恢復數(shù)據(jù)的方法①如果有帳套的備份的話,直接使用系統(tǒng)管理里的帳套引入功能就可以了。在這種情況下,一些操作員的權限信息可以丟失,可以重新賦予權限,也可心恢復原來的ufsystem系統(tǒng)控制庫②如果是年度帳的備份,并且軟件中還有這個帳套和年度的話,可以用帳套主管注冊,然后從年度帳菜單下引入;如果是沒有這個帳套存在,就要在系統(tǒng)管理中新建一套帳,建帳時只要注意啟用日期、行業(yè)性質、帳套主管即可,其他均可忽略,然后把備份中的ufdata.ba_ 用APP目錄下的ufuncomp.exe 將它解壓縮為ufdata.bak 再將此文件在enterprise manager 里restore 即可③通過Enterprise Manager 做的單個數(shù)據(jù)庫的備份的和年度帳的備份可以通過 restore database 功能來操作,具體過程為右鍵該數(shù)據(jù)庫—所有任務—還原數(shù)據(jù)庫—從設備—選擇設備—磁盤—添加—瀏覽該文件—確定,在選項標簽里把‘強制還原’選上,移至的物理文件名為該帳套的目錄和文件名。然后就可以正?;謴土?。④如果是從其他數(shù)據(jù)庫的備份信息里恢復的話,就可以選擇還原自數(shù)據(jù)庫,然后在參數(shù)處查找該數(shù)據(jù)庫和數(shù)據(jù)庫的備份信息。在選項標簽里把‘強制還原’選上,移至的物理文件名為該帳套的目錄和文件名。然后就可以正?;謴土恕"萑绻菐ぬ椎膫浞?,而該帳套又包含很多個年度,可以先將該文件解壓縮,然后通過方法③所述找到該備份文件(備份設備),查看該設備的內容,選擇要恢復數(shù)據(jù)庫對應的備份號(每個年度一個號),在選項標簽里選強制恢復,配置正確的物理文件位置⑥如果只有ufdata.mdf(數(shù)據(jù)庫文件),ufdata.ldf(日志文件)可以運用系統(tǒng)數(shù)據(jù)庫(master)里的系統(tǒng)存儲過程 sp_attach_db 來恢復,具體操作過程:在Query Analyzer 或者 Dos 里的osql 命令來實現(xiàn),exec sp_attach_db '數(shù)據(jù)庫名','參數(shù)1(第一個物理文件的目錄及文件名)','參數(shù)1(第二個物理文件的目錄及文件名)' 如 exec sp_attach_db 'ufsystem','D:\wf821\admin\ufsystem.ldf','D:\wf821\admin\ufsystem.mdf'注: 如果是該數(shù)據(jù)庫為灰色,則需要先斷開該物理文件與數(shù)據(jù)庫的連接, 使用sp_detach_db 語法: exec sp_detach_db '數(shù)據(jù)庫名'⑦如果是只有mdf 文件(數(shù)據(jù)庫文件),則需要另外一個系統(tǒng)存儲過程sp_attach_single_file_db 具體語法為 exec ap_attach_single_file_db 'ufsystem','D:\wf821\admin\ufsystem.mdf'⑧stop SQL Server service ,replace physname by new files and start SQL server service. 其實這一種方法也可以應用于當數(shù)據(jù)庫出現(xiàn)損壞的情況,利用SQL Server 在啟動時主動檢測數(shù)據(jù)庫是否完好的功能。 不論是在編制維護工具時還是一般的調用戶數(shù)據(jù),如果能很熟練的利用SQL語句,肯定能提高效率,也減輕工作量。現(xiàn)在我把SQL語句的用法總結如下,供大家參考: SQL語句由命令、子句、運行符和合計函數(shù)構成,這些元素構成的語句可以用來進行創(chuàng)建、更新、查找、刪除、排序等數(shù)據(jù)庫的操作。 1、命令 命令 描述 CREATE 創(chuàng)建新的表、字段和索引。 DROP 刪除數(shù)據(jù)庫中的表和索引。 ALTER 通過添加字段或改變字段定義修改表。 SELECT 在數(shù)據(jù)庫中查找滿足特定條件的記錄。 INSERT 在數(shù)據(jù)庫中用單一的操作加載一批數(shù)據(jù)。 UPDATA 改變特定字段和記錄的值。 DELETE 從數(shù)據(jù)庫表中刪除記錄。 2、子句 子句 描述 FROM 為從其中選定記錄的表命名。 WHERE 指定所選記錄必須滿足的條件。 GROUP BY 把選定的記錄分成特定的組。 HAVING 說明每個組需要滿足的條件。 ORDER BY 按特定的次序將記錄排序。 3、運算符預算符就不多說了,和計算機語言規(guī)定的一樣。 例子:一個標準的查詢 SELECT * FROM WA_formula IN UFDATA [ WHERE 查詢條件 GROUP BY 字段列表] 選擇所有字段從WA_formula表在UFDATA庫中[當滿足查詢條件時并把記錄分成一個特定的組] 例子:刪除表中符合條件的記錄 DELETE * FROM WA_formula WHERE cgzgradenum ="998" 刪除WA_formula表中所有符合cgzgradenum字段的數(shù)據(jù)是998的記錄。 例子:記錄的排序 SELECT dblValue FROM fa_Cards ORDER BY dblValue ASC [ DESC ] 使fa_Cards表的dblValue(原值)字段按升序排列。(ASC,和DESC是關鍵字表示升序和降序) 數(shù)據(jù)庫控件簡介數(shù)據(jù)控件提供了訪問數(shù)據(jù)庫中數(shù)據(jù)的方法,可以移動到數(shù)據(jù)庫中任意一條記錄,和其他控件配合使用可以顯示數(shù)據(jù)庫中記錄。他的強大功能可以使我們不編一行代碼便可完成對數(shù)據(jù)庫的大部分操作。熟練掌握DATA控件對編寫維護工具無疑是很必要的,現(xiàn)在我們看看數(shù)據(jù)控件的常用屬性。 Connect屬性:設置或返回數(shù)據(jù)庫類型,VB可以處理的數(shù)據(jù)庫類型很多,比較常用的有Access;dBase;Foxpro等。如下面的語句可以訪問Access類型的數(shù)據(jù)庫。Data1.Connect = "Access" DataBaseName 屬性:設置或返回被訪問數(shù)據(jù)庫的名稱和路徑。例如: Data1.DataBaseName = "ufdata.mdb" 或 Data1.DataBaseName = Text1.Text Text1.Text是用戶在界面中的文本框輸入的數(shù)據(jù)庫路徑和名稱。 RecordSource屬性:設置和返回數(shù)據(jù)庫中表的名稱。例如: Data1.RecordSource = "WA_formula" 如何把記錄顯示在窗體要使數(shù)據(jù)庫中表的記錄顯示在界面上需要用到數(shù)據(jù)庫約束控件(實際上就是文本框、標簽等常用控件這些對象在數(shù)據(jù)庫術語中被稱為約束控件),使用約束控件的前提是在窗體中需先添加數(shù)據(jù)控件。建立約束控件和數(shù)據(jù)控件之間的關聯(lián)便會顯示出記錄內容,如果數(shù)據(jù)控件移動到另一條記錄約束控件則相應改變。 常用的屬性有: DataSource屬性:用來設置和文本等控件發(fā)生關聯(lián)的數(shù)據(jù)控件。例如: Text1.DataSource = "Data1" 設置了文本控件向關聯(lián)的數(shù)據(jù)控件為Data1。 DataField屬性:返回或設置當前記錄當前字段的名稱,在屬性窗口中可以選擇要顯示的字段。例如: Text1.DataField = "cGZItemFormula" 在文本框中顯示工資公式表中工資表達式字段的當前記錄。===============-=-=-=-======================== ================ 由于U8采用的是SQL SERVER數(shù)據(jù)庫導致了數(shù)據(jù)量的大幅度增加,備份就顯的更加重要,一般單位帳套少通過輸出備份就可以解決問題,可大型用戶例如會計核算中心、大型工礦企業(yè)他們的帳套多,大多在60-100左右數(shù)據(jù)都在3G、4G甚至10G以上,這樣一來輸出備份的劣勢就顯現(xiàn)出來了。我在實踐中發(fā)現(xiàn)了一種針對這樣的用戶比較簡便的備份方法,即數(shù)據(jù)庫備份。條件:1、必須有兩臺高性能的服務器,一臺做主服務器,一臺做備份服務器,或是 一臺高性能的服務器,一臺高性能的PC機 2、操作系統(tǒng)必須同為NT或2000,且NT安裝路徑,用友的數(shù)據(jù)路徑必須一致 3、備份服務器的D或E 盤空間應在10G以上操作:每天或3-4天左右,將主服務器的SQL服務停止,把UFADMSQL文件夾和ZT帳套文件夾通過網(wǎng)絡直接拷貝至備份服務器的相同路徑的相同文件夾下即可?;謴蜁r如果主服務器正常則只須將備份服務器上備份的數(shù)據(jù)回拷即可,如主服務器崩潰則只須在備份服務器上執(zhí)行UFATTACH 命令即可將備份的數(shù)據(jù)恢復至備份服務器上,馬上備份服務器就可工作。優(yōu)點:省事省力,以某會計核算中心為例,115套帳輸出備份大約需要5小時,其間可能會出錯,數(shù)據(jù)庫備份只須1-2小時(100M網(wǎng)速),還不會出錯,恢復起來也比輸出備份簡單。缺點:備份服務器所需的硬盤空間要求比較大;要求備份操作人員有一定的用友軟件的使用基礎和數(shù)據(jù)庫知識。 需要注意的是: 1、此項工作比較適合網(wǎng)絡版用戶,在服務器上進行。 2、單機版用戶,要先在system下先建一個ufadmsql文件夾,再把UFSYSTEM.LDF、UFSYSTEM.MDF、UFSUB.LDF、 UFSUB.MDF拷到此文件夾內再執(zhí)行UFATTACH命令 3、恢復時要先在備份服務器上運行系統(tǒng)管理再執(zhí)行UFATTACH命令 4、關于備份的時間,可以天天做也可以隔幾天做一次 5、兩臺服務器名、IP地址不必相同。平時可以同時開的。 6、我只進行了NT環(huán)境的測試,2000環(huán)境沒有試過 7、備份服務器上不需要象8.X一樣先建帳有帳套信息后再引入備份,直接運行UFATTACH命令即可. |
|