posts - 89,  comments - 98,  trackbacks - 0
          我從來沒接觸過SYBASE數據庫,現在老總給我個任務,叫我給SYBASE數據庫定時備份,我看了好多資料都不明白,主要是沒個思路,不知道是要編程解決還是通過設置SYBASE數據庫自己備份,急死我了 ?
          我想寫個備份的進程,定時備份,可是不知道SYBASE的接口是怎么樣的,怎么與SYBASE數據庫交互 ?
          請大家幫我出出主意,了解這些的朋友請給個思路,謝謝了 ?
          --------------------------------------------------------------- ?
          ?
          如果是UNIX下的就通過使用crontab了。WIN平臺下面有一個任務管理器。也可以相應使用。 ?
          --------------------------------------------------------------- ?
          ?
          看看bcp命令和dump,load命令了。有書的話。 ?
          --------------------------------------------------------------- ?
          ?
          sybase不提供定時備份功能,自己寫腳本放到cron或計劃任務 ?
          ?
          建立批處理back.bat或sh腳本,腳本內容為 ?
          isql ?-Usa ?-P ?-STESTSVR–o ?/sybase ?/dump.log(用于產生日志,windows下指定window格式的路徑) ?–i ?dump.sql ? ?
          ?
          備份工作通過isql調用備份腳本實現: ? ?
          ? ?
          isql ?-Usa ?-P ?-STESTSVR–o ?/sybase ?/dump.log ?–i ?dump.sql ? ?
          ? ?
          為使sybase用戶成功執行本操作,我們應同時將sybase的環境變量定制在dump.sh中,其主要命令可參考sybase用戶的.profile文件。另外,本命令從外部讀取的備份腳本dump.sql文件的內容如下: ? ?
          ? ?
          declare ?@ddate ?char(28) ?/* ?定義一個變量,用于備份的文件名稱 ?*/ ? ?
          select ?@ddate ?= ?'/sybase/backup/dbname' ?+ ?convert(char(6), ?getdate(), ?12) ?+ ?stuff(convert(char(5), ?getdate(), ?8),3,1,null) ?+”.dmp”/* ?將當前日期進行轉換 ?*/ ? ?
          dump ?database ?test ?to ?@ddate ? ?
          dump ?transaction ?with ?truncate_only ? ?
          ?
          go ? ?
          ? ?
          說明:該腳本將當前日期進行轉換,形成備份的文件名,其格式為: ?backupyymmddhhmi ?
          ?
          ?
          最后把批處理back.bat或sh分別加入計劃任務或cron ?
          這里給出cron的方法,計劃任務很容易,不說了 ?
          ?
          ①.定義權限并定制cron ?job ? ?
          ?UNIX系統中有一條命令crontab,通過它我們可以定制cron ?job,它安排各命令在指定的時間間隔內執行,有定時器的功能。我們所制定的自動備份及自動檢測方案就是用它來實現的。但是,并不是每個UNIX系統的用戶都有權限使用它。 ? ?
          HP ?UNIX在默認情況下只有root,admin,uucp三個用戶有權限使用,這時我們需要將數據庫管理員sybase用戶添加到cron.allow文件中。首先,應以root用戶身份登錄,到路徑/var/adm/cron下確認無cron.deny文件,或該文件中無sybase這條記錄。然后,編輯cron.allow文件,將sybase ?用戶添加進去,這樣,sybase用戶就有了定制cron ?job的權限。 ? ? ?
          以sybase用戶登錄后,執行crontab ?–e ?編輯cron ?job, ?例: ? ?
          ? ?
          00 ?18 ?* ?* ?* ?/sybase/dump.sh ? ?
          ? ?
          其中,第一條命令的意思是在每天的18∶00開始自動執行腳本文件dump.sh,對數據庫進行備份, ?dump.sh ?的編輯在后面討論。第二條命令是在每月15日的21∶30自動執行腳本文件dbcc.sql,對數據庫進行數據的一致性檢測,其結果輸出到文件dbcc.err中。當然,我們應該根據不同情況適當調整定義的工作時間。
          posted on 2006-09-06 11:04 水煮三國 閱讀(742) 評論(0)  編輯  收藏 所屬分類: Sybase
          <2006年9月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          常用鏈接

          留言簿(4)

          隨筆分類(85)

          隨筆檔案(89)

          文章分類(14)

          文章檔案(42)

          收藏夾(37)

          java

          oracle

          Sybase

          搜索

          •  

          積分與排名

          • 積分 - 211143
          • 排名 - 265

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 东宁县| 冕宁县| 昭平县| 象州县| 河东区| 陈巴尔虎旗| 屏边| 临沭县| 会昌县| 淅川县| 龙岩市| 新乐市| 武威市| 吉安县| 广西| 惠东县| 泽州县| 石渠县| 瑞昌市| 喀什市| 蓝山县| 乌恰县| 丹东市| 桂东县| 县级市| 沿河| 凌海市| 宿州市| 北流市| 五华县| 岗巴县| 兴海县| 嘉黎县| 六枝特区| 丰原市| 安康市| 巫溪县| 林州市| 鹤山市| 临江市| 巩留县|