`

Sybase学习中记录下的零碎东西

阅读更多
1.非常紧迫时释放日志空间:dump transaction database_name with no_log
删除事务日志中不活跃的部分:dump transaction database_name with truncate_only
2.设置Sybase账号sa的口令
命令行下:
isql -Usa -P -Sserver-name
1> sp_password null, "111111"
2> go
成功会提示:Password correctly set.
(return status = 0)
其中 null 是缺省口令, "111111" 是您为“sa”帐号指定的口令(不能少于6位)。
3.sp_diskdefault过程功能:
如果用户没有指定数据库设备,或是用create database 或alter database命令指定了default,则指定数据库设备是否可以用于数据存储。
设置master数据库设备不做为缺省的数据库设备:sp_diskdefault master, defaultoff
4.添加数据库设备:disk init命令,如:disk init  name  = 'log02',  physname  = 'D:\DevicesSybase\data\log02.dat',  vdevno  = @vdevno,  size  = 51200,   vstart  = 100663296, cntrltype  = 0
修改数据库设备号9的限制:sp_configure 'number of devices',100
5.添加转储设备到Adaptive Server:sp_addumpdevice "disk"|"tape" mytapedump "D:\DevicesSybase\dev\tape1",40
6.运行pubs2脚本:isql -Usa -P -SFZB -i instpds2;
image数据:isql -Usa -P -SFZB -i instpix2;
7.启动单用户模式: sp_dboption master,'single user',true
先要启动备份服务器:Sybase\ASE-12_5\bin\bcksrvr.exe
备份数据库:
dump database database_name  to "D:\DevicesSybase\bak\testdata.dat"
数据库和日志放在同一个设备上时:
dump database master with no_log
备份日志:
要先在master上执行:sp_dboption database_name ,  "trunc log on chkpt", false
dump transaction database_name  to "D:\DevicesSybase\bak\txzllog.dat"
备份的命令
1.全库备份
dump database userdb to stripe_device1
stripe on stripe_device2

2.增量备份并删除日志
dump transaction userdb to stripe_device

3.仅删除日志(没有备份)
dump transaction userdb with truncate_only

4、日志满且truncate_only无法删除日志时
dump transaction userdb with no_log(慎用)

恢复的命令
1. load database database_name from stripe_device
恢复整个数据库

2. load transaction database_name from stripe_device
恢复日志
脱机备份的系统表:
select * from sysusages order by vstart
select * from sysdatabases
select * from sysdevices
select * from sysloginroles
select * from syslogins
8.查看用户和进程信息状态:sp_who
9.1).设置全服务器范围允许的最大登录尝试次数:sp_configure "maxinum failed logins",5;
2).为特定登录设置允许的最大登录尝试次数:sp_addlogin sa2,"123456",maxfailedlogins=2,更改:sp_modifylogin "sa2",@option="max failed_logins",@value="40"
3).为特定角色登录设置允许的最大登录尝试次数:create role intern_role with passwd "123456",max failed_logins 20,更改:alter role intern_role set max failed_logins 5
4).删除所有角色的最大登录失败次数的替换值:alter role "all overrides" set max failed_logins -1
10.锁定和解锁登录名:sp_locklogin "sa2","lock",sp_locklogin "sa2","unlock",信息存储在syslogins的字段status中。
11.锁定和解锁角色:alter role intern_role lock,alter role intern_role unlock,信息存储在syssrvroles的字段status中。
12.创建登录用户:sp_addlogin loginname,passwd,[,defdb] [,deflanguage [,fullname]]
13.向数据库中增加用户:sp_adduser loginname [,name_in_db [,groupname]],eg.sp_adduser sa2,internsa,public
14.初始化数据库设备:
disk init  name  = 'defdev',  physname  = 'D:\DevicesSybase\data\defdev.dat',  vdevno  = 2,  size  = 102400,   vstart  = 33554432, cntrltype  = 0
删除:sp_dropdevice logicalname[不会删除物理文件]
15.查看内存
sp_configure "Memory Use"
sp_monitorconfig "number of open indexes"
16.查看高速缓存配置情况:sp_cacheconfig
配置高速缓存[默认为2k的缓冲池]:sp_cacheconfig "default data cache","10M"
创建新的缓存名为dbname:sp_cacheconfig "dbname cache","10M"
从10M的cache中分配3M给4k的缓冲池:sp_poolconfig "default data cache" , "3M","4K"
删除Cache:sp_cacheconfig "default data cache",“0”
改变内存池大小:sp_poolconfig "default data cache" ,"5M","4K"
删除内存池:sp_poolconfig "default data cache", "0", "16K"

17.BCP程序:
bcp in 时,sp_dboption select into/bulkcopy/pllsort ture
18.分区表:
alter   table   tablename   partition   number_of_partitions  
注意sybase的表分区和oracle的表分区概念不一样。  
oracle的表分区可以按表中某个关键字段将大表拆分成小表,并可以将这些小表指定不同的表空间。
sybase的表分区仅将表分成要求的若干分区,不可以按表中某个字段划分

新增表字段:alter table table_name add column1 int null
删除字段:alter table  table_name drop column1

sp_helpdb [dbname] 查看数据库大小和数据库设备信息
sp_spaceused [tablename] 查看数据库中表的行数,数据页数以及空间大小

带参数的print打印语句:print 'table %1! not exists', @tblname

添加Sybase相关服务:
Sybase相关服务:
sc create SybaseSQLServer binpath= "C:\ProgramTools\Sybase\ASE12.5\ASE-12_5\bin\sqlsrvr.exe -sFZB -C" displayname= "Sybase SQLServer _FZB"
删除:sc delete SybaseSQLServer
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics