Sql 如何关闭混合数据并登录Sybase ASE 15.7?

Sql 如何关闭混合数据并登录Sybase ASE 15.7?,sql,sybase,sap-ase,sybase-ase15,Sql,Sybase,Sap Ase,Sybase Ase15,在Sybase ASE 15.7中使用sp_helpdb时,我的结果: db_abc 2054.0 MB sa trunc log on chkpt, mixed log and data db_def 1030.0 MB sa trunc log on chkpt, mixed log and data 我可以关闭混合日志和数据吗? 我尝试了sp\u dboption db\u abc,“混合日志和数据”,false 但是show errorSybase数据库

在Sybase ASE 15.7中使用
sp_helpdb
时,我的结果:

db_abc      2054.0 MB   sa  trunc log on chkpt, mixed log and data
db_def      1030.0 MB   sa  trunc log on chkpt, mixed log and data
我可以关闭混合日志和数据吗? 我尝试了
sp\u dboption db\u abc,“混合日志和数据”,false

但是show error
Sybase数据库错误:数据库选项不存在或您无法设置该选项。
sp\u dboption db\u abc,'abort tran on log full',false
在其他情况下是可以的。

混合日志+数据不是开关。这取决于数据库的创建方式(以及页面如何在同一区域中混合)。您可以将其关闭。您需要将日志与数据分开以实现您的目标

由于在当前设备上,您同时拥有日志和数据页,因此您需要:

  • 添加另一个仅计划用于日志的设备(
    alterdatabase..log-on..
  • 打开
    单用户
    模式
  • 使用
    sp\u logdevice
    过程将日志移动到新创建的设备
  • 关闭
    单用户
    模式
代码示例:

1> disk init name = dev1, physname = '/tmp/dev1.dat', size = '200M'
2> go
create database db_abc on dev1 = '200M'
2> go
CREATE DATABASE: allocating 102400 logical pages (200.0 megabytes) on disk 'dev1' (102400 logical pages requested).
Database 'db_abc' is now online.
1> exec sp_dboption 'db_abc', 'trunc log on chkpt', true
2> go
Database option 'trunc log on chkpt' turned ON for database 'db_abc'.
Running CHECKPOINT on database 'db_abc' for option 'trunc log on chkpt' to take effect.
(return status = 0)
1> exec sp_helpdb 'db_abc'
2> go
 name   db_size       owner dbid created      durability lobcomplvl inrowlen status                                 
 ------ ------------- ----- ---- ------------ ---------- ---------- -------- -------------------------------------- 
 db_abc      200.0 MB sa       4 Jul 07, 2017 full                0     NULL trunc log on chkpt, mixed log and data 

(1 row affected)

 device_fragments size          usage        created             free_kbytes      
 ---------------- ------------- ------------ ------------------- ---------------- 
 dev1                  200.0 MB data and log Jul  7 2017  9:56AM           202232 
(return status = 0)
1> disk init name = dev2, physname = '/tmp/dev2.dat', size = '100M'
2> go
1> alter database db_abc log on dev2 = '100M'
2> go
Extending database by 51200 pages (100.0 megabytes) on disk dev2
Warning: Using ALTER DATABASE to extend the log segment will cause user thresholds on the log segment within 128 pages of the last chance threshold to be disabled.
1> exec sp_dboption 'db_abc', 'single user', true
2> go
Database option 'single user' turned ON for database 'db_abc'.
Running CHECKPOINT on database 'db_abc' for option 'single user' to take effect.
(return status = 0)
1> exec sp_logdevice 'db_abc', 'dev2'
2> go
DBCC execution completed. If DBCC printed error messages, contact a user with System Administrator (SA) role.
DBCC execution completed. If DBCC printed error messages, contact a user with System Administrator (SA) role.
syslogs moved.
The last-chance threshold for database db_abc is now 16 pages.
(return status = 0)
1> exec sp_dboption 'db_abc', 'single user', false
2> go
Database option 'single user' turned OFF for database 'db_abc'.
Running CHECKPOINT on database 'db_abc' for option 'single user' to take effect.
(return status = 0)
1> exec sp_helpdb 'db_abc'
2> go
 name   db_size       owner dbid created      durability lobcomplvl inrowlen status                                 
 ------ ------------- ----- ---- ------------ ---------- ---------- -------- -------------------------------------- 
 db_abc      300.0 MB sa       4 Jul 07, 2017 full                0     NULL trunc log on chkpt, mixed log and data 

(1 row affected)

 device_fragments size          usage     created             free_kbytes      
 ---------------- ------------- --------- ------------------- ---------------- 
 dev1                  200.0 MB data only Jul  7 2017  9:56AM           202248 
 dev2                  100.0 MB log only  Jul  7 2017  9:57AM not applicable   

 -------------------------------------------------------------------------------------------------------------- 
 log only free kbytes = 102000                                                                                  
(return status = 0)

我们将存储数据并登录到2 where和
trun log on
,以确保注销