1、简单的情况下 dump trans with no_log 就可以了,master库一般不会满。 9S<x$tC:9
1> use master X?f="h%i
$<Xf2W
2> go _DQ}u<yN
+O*i2[W=
1> checkpoint rp Tyf
Ubn.!0`O
2> go _EdyV?4}<
"`k<5/zHa
1> dump tran master with no_log Mn=s(bJX=
<*.vM!;
2> go .-LMSCb;A
+Vb7|31
00:00000:00011:2006/02/22 14:53:38.06 server WARNING: ************************* $.m`?ty:+
IjaG@wT/
** pJ7n1\7
_WtTGma4
00:00000:00011:2006/02/22 14:53:38.06 server Attempt by user 1 to dump xact on -"YS@ -’5
ee:H-%F9
db master with NO_LOG XVZZ:A*
gB` +*|tI
00:00000:00011:2006/02/22 14:53:38.06 server Attempt by user 1 to dump xact on U?:_AE|Y
<.4_ak
db master with NO_LOG was successful /b<’ |k
!3liiJ
00:00000:00011:2006/02/22 14:53:38.06 server WARNING: ************************* >#3?BQ’
DV"&$
**
k+No b
2、如果是windows平台,则找到RUN_your_server_name.bat ?!dU!;|K
如果是Unix平台,则找到RUN_your_server_name文件 2vLG`7f
编辑上面的启动文件,在行尾加上 -T3067 MJJb+
然后使用启动文件启动数据库,启动后 c"io(*N=
dump tran master with truncate_onlyu A "a}3?,
go y6’2 HD o
1)备份master数据库 jQnE(i%>{i
dump database master to ’备份路径及文件名’ BgSN[j*h
2)停止sybase服务 yig wgVC\
shutdown BWz>+QiU4
3)编辑sybase服务启动文件(在unix下一般是“RUN_服务名”的文件,在windows下一般是“RUN_服务名.bat”的批处理文件)。在启动文件的命令行最后加上 -T3607) A E<c
4)使用启动文件启动服务后,再dump tran master with truncate_only +(/ +@A;G
5)这时dump清理日志一般多会成功。然后在停止shutdown服务,去掉-T3607,以正常方式启动服务 ^HiU- kGQ
3、不行的话,则需要建立一设备来进行扩展或按以下方式重建: W< *g]k
1)备份master数据库 e6rWa+
启动backup server,进入isql环境执行: )T3!]VF
1>dump database master to ’/sybase/master.dump’ 8q<eJD3
2>go vUj|^qI
(如果 不行的话 dump 日志 with no log) AOQ_!"~ "
hut down SQL/ASE Server ]Tx#Qe:DD
1>shutdown ?]gbTr
2>go 37sO36Sf5(
2)创建新的足够大的master设备 6+ev($N,
$buildmaster -d -ssize(size以2K为单位) F[ }u]14
例:$buildmaster-d/sybase/data/master.dat -s102400 A2}8JM
3)修改RUN_servername文件 :7$_A#9
编辑RUN_server_name文件,-d参数指向新建的设备名。 Gf`& >%*
4)单用户模式重启server D7TV8PLF
$startserver -f RUN_servername -m $fnTef&
5)执行installmaster脚本 =Hb&6a
6)由备份文件装载master数据库 <[-*ujI
1>load database master from ’/sybase/master.dump’ \< Y) %4
2>go h\hEA8i*~
7)修改sysdevices信息 C3@dW,I
sp_configure ’allow updates’, 1 Fn4Vs#byz
go 9b\Y$\*XX
begin tran q&m`T~y&
go a:+ :I
update sysdevices set high = 102399 , phyname = ’e:\sybase\data\master_test.dat’ where name = ’master’ <|lJ=16H
go \@:+M \JR
(102399=200*512-1 master设备大小为200M) r~VwHKS
commit tran R.A{S40u
go %}g %?pC$
8)扩展master数据库 Z4" _9+}&
1>alter database master on master设备名称=size(此值以M为单位) eBfyQu
2>go ceC]q_k/
例:alter database master on master=10 T}2m?&bk]8
将master数据库在master设备上扩展10M vb-aeB
这个操作比较危险,注意先做好备份(比如 GHOST) ps~6klcUN
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/