一实验准备
1备份master库
dump database master to '/backup/master.dat'
2 lv_masrter的大小
# lsvg -l datavg
datavg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
lv_backup jfs2 320 320 1 open/syncd /backup
loglv00 jfs2log 1 1 1 open/syncd N/A
lv_master raw 10 10 1 closed/syncd N/A
3删除lv_master
# rmlv -f lv_master
rmlv: Logical volume lv_master is removed.
二重新创建master设备
1创建lv_master(和之前的lv_master保持相同大小)
# mklv -t raw -y lv_master datavg 10
2重建master设备
dataserver -d /dev/rlv_master -w master
-w表示在/dev/rlv_master设备上重写master数据库
三以恢复方式启动sybase服务
1 拷贝sybase的主服务RUN文件为 m_RUN_server_name
$ cp RUN_CRM m_RUN_CRM
2 编辑m_RUN_CRM 在其dataserver命令最后一行添加-m 参数如下:
$ cat m_RUN_CRM
#!/bin/sh
#
# Adaptive Server name: CRM
# ASE page size (KB): 2k
# Master device path: /dev/rlv_master
# Error log path: /sybase/ASE-12_5/install/CRM.log
# Configuration file path: /sybase/ASE-12_5/CRM.cfg
# Directory for shared memory files: /sybase/ASE-12_5
#
/sybase/ASE-12_5/bin/dataserver \
-sCRM \
-d/dev/rlv_master \
-e/sybase/ASE-12_5/install/CRM.log \
-c/sybase/ASE-12_5/CRM.cfg \
-M/sybase/ASE-12_5 \
-m
3 通过startserver -f m_RUN_CRM启动数据库
对m_RUN_server_name文件内容中的参数解释如下:
/sybase/ASE-12_5/bin/dataserver \
-sCRM \
-d/dev/rlv_master \
-e/sybase/ASE-12_5/install/CRM.log \
-c/sybase/ASE-12_5/CRM.cfg \
-M/sybase/ASE-12_5 \
-d 指定master设备的名字
-b 指定master设备的大小
-s 服务名
-e 错误日志文件名
-i 接口文件的目录
-M 指定sybases主安装目录就行
-m master的恢复模式,也就是master的单用户模式
四确定并更改sysservers表中关于备份服务的网络名为备份服务名。
select * from sysservers
注意可以直接更新系统表,不需要sp_configure ‘allow update’,1
update sysservers set srvnetname='CRM_back' where srvid=1
五启动sybase的备份服务
$ startserver -f RUN_CRM_back
六loadmaster数据库的备份
load database master from '/backup/master.dat'
七重启sybase主服务
$ startserver -f RUN_CRM