sp_dboption检查点
1、在master库中执行
use master
go
sp_dboption
go
2、在ase_db执行检查点操作(checkpoint命令)
use ase_db
go
checkpoint
go
允许默认控制:allow nulls by default 参数:true/false
sp_dboption ‘ase_db’ , ‘allow nulls by default’ , true
go
建表:
use ase_db 使用ase_db数据库
go
create table test(a int ,b int) 建表
go
insert into test(a) values(1) 插入数据
go
select * from test 查询表中数据
注:如果删除设备时报出错误,‘设备上尚有数据库,无法删除该设备’,这是请先删除数据库,再通sp_dropdevice删除设备。
异步日志服务:async log service
sp_dboption ‘ase_db’ , ‘async log service’ , ‘true’
go
自动表示:auto identity
sp_dboption ‘ase_db’ , ‘auto identity’ , true
go
use ase_db
go
create table test(a int,b int)
go
inset into test values(1,2)
go
select SYB_IDENTITY_COL, * from test SYB_IDENTITY_COL:自动序列号
go
只用于dbo:dbo use only
sp_dboption ‘ase_db’ , ‘dbo use only’ , true
go
use ase_db 则会提示这个数据库只有所有者能访问
go
事务中嵌套DDL:ddl in tran
sp_dboption ‘ase_db’ , ‘ddl in tran’ , true
go
use ase_db
go
begin tran 开启事务
insert into test values(2,2)
go
create view v1 as select * from test 创建事务,事务中可以嵌套事务
go
select count(*) from v1 查看事务
go
drop view v1 删除事务
go
commit tran 提交事务
延迟调教:delayed commit
sp_dboption ‘ase_db’ , ‘delayed commit’ , true
go
非唯一索引标识:identity in nonumique index
sp_dboption ‘ase_db’ , ‘identity in nonumique index’ , true 打开索引
go
create nonclustered index ind_1 on ase_db.dbo.test1(b asc) 为test1表创建索引 ind_1
go
恢复时不添加检查点:no chkpt on recovery
sp_dboption ‘ase_db’ , ‘no chkpt on recovery’ , true true/false
go
无自由空间审计:no free space acctg
sp_dboption ‘ase_db’ , ‘no free space acdtg’ , true
go
只读:read only
sp_dboption ‘ase_db’ , ‘read only’ , true
go
use ase_db
go
insert into test1 values(1,1,1,1)
go
会提示DML操作都将失败
select into /bulk copy/pllsort
该选项用户用户执行不记录日志信息的数据操作,如果运行这类数据批量处理(select into , bcp in等)操作后,我们不能执行列行数据库事务日志备份,因为日志链已断,这时我们必须采用数据库完全备份,执行dump database进行数据库重新备份。
sp_dboption ‘ase_db’,’select into/bulkcopy/pllsort’,true 当into/bulkcopy/pllsort关闭状态
go
dump database ase_db to ‘/home/sybase/ase_db.dump’ 备份ase_db库
go
sp_dboption ‘ase_db’,’select into/bulkcopy/pllsort’,false 关闭该功能
go
当以上功能为false状态,可以用dump transaction 库名 with no_log或dump transaction 库名 with truncate_only日志截断。在做备份
dump transaction ase_db with truncate_only
go
dump database ase_db to ‘/home/sybase/ase_db.dump’
go
单用户模式:single user
设置该功能后,数据库一次只允许一个用户使用
sp_dpoption ‘ase_db’ , ‘single user’ , true
go
检查点时截断日志:trunc log on chkpt
sp_dboption ‘ase_db’ , ‘trunc log on chkpt’ , true
go
如果以上设置false可用一下来截取日志并备份
dump transaction ase_db with truncate_only
go
dump database ase_db to ‘/home/sybase/ase_db.dump’
go
唯一auto_identity索引:unique auto_identity index
数据库auto_identity选项如果被设置为true,则新创建的数据表会自动获得一个名为’SYB_IDENTITY_COL’的列,同时为改列创建一个唯一索引约束。
sp_dboption ‘ase_db’ , ‘unique auto_identity index’ , true
go
use ase_db
go
create table test(a int,b int)
go
select SYB_IDENTITY_COL, * from test
go