目錄表

Sybase 指令時間

指令模式開啟 isql

不管在 Unix (Solaris, AIX, Linux, HP-OS)或是 Windows 的 Sybase 伺服器
都會有著這個指令, 可以以 commmand 模式操作資料庫
假設 Sybase 啟動之伺服器名稱為 SybaseServer
-w 可以設定視窗寬度為 1000 ,如果是用 putty 等連線軟體連的時候可以放寬可視區域

isql -Usa -SSybaseServer -w1000 -e -n

Device 初始化

disk init name = "DBName_data01", physname = "/opt/sybase/data/DBName_data01.dat", SIZE = "2G"
disk init name = "DBName_log01", physname = "/opt/sybase/data/DBName_log01.dat", SIZE = "2G"

資料庫建立 Database Create

CREATE DATABASE DBName ON DBName_data01 = '2G' log ON DBName_log01 = '2G'

資料庫擴容 Databse alter

ALTER DATABASE DBName ON DBName_data02 = '2G'
ALTER DATABASE log ON DBName_log02 = '2G'
ALTER DATABASE DBName ON DBName_data02 = '2G' log ON DBName_log02 = '2G'

資料庫上線 Databse Online

online DATABASE DBName

查詢 log segment 使用空間

dbcc checktable (syslogs)

清除 transaction log

請注意此指令的使用並非常態,請先了解其真正用意後再行使用

dump tran DBName TO file_name
/* 備份 transaction segment 到檔案去 */
OR
dump tran DBName WITH truncate_only
/* 清除 log 不備份 */
OR
dump tran DBName WITH no_log
/* 清除 log 不備份 */

還原 database

先確認無任何人連線於該資料庫中,建議先請該使用者離線,不得已時再使用 kill 指令剔除該 User

LOAD DATABASE DBName FROM '/opt/sybase/dump/20101030/DBName_20101030060101.dmp'

還原 database transaction

於還原完 database 後,在 database online 前執行,若 online database 即無法執行此指令

LOAD tran DBName FROM '/opt/sybase/dump/20101030/DBName_trans_20101030060101.dmp'

還原完所有 transaction log 後再將 database online

檢視 table 筆數

直接抓取系統 tabel 裡的紀錄值

SELECT O.name,rowcnt(I.doampg) RecCnt FROM sysobjects AS O,sysindexes AS I
WHERE I.id = O.id AND I.indid = 1 AND O.type = 'U'
ORDER BY RecCnt DESC


<fbl>