Sybase常用维护命令
sybase常用命令

以前的文档,整理时发现,贴出常用的命令集合一、配置命令1、检查CPU使用情况:sp_sysmon "internal","model"internal是监视时间。
例如:"00:01:00"model是模块的名称。
包括'kernel','wpm','parallel','taskmgmt','appmgmt','esp','housekeeper','monaccess','xa ctsum','xactmgmt','indexmgmt','mdcache','locks','dcache','pcache','memory','reco very','diskio','netio'2、检查使用的最大的引擎数(CPU)sp_configure "max online engines"此命令还可以改变sybase系统使用CPU的数量。
注意:改变后需要重新启动sybase才可以使培植生效。
引擎的数量是总的CPU数量减一3、显示引擎号、状态、相关任务数以及引擎启动的时间:select engine, status, affinitied, starttime from sysengines4、显示每个用户的繁忙程度sp_reportstats5、监视配置参数的运行情况sp_monitorconfig "open objects"参数见sp_monitorconfig中的值二、权限命令1、给一个用户授所有的权限grant all to user_name2、给一个用户授对某张表的所有权限grant all on table_name to user_name3、添加一个登录(login)sp_addlogin三、TSQL使用1、统计信息更新select "print '"+name+"'"+char(10)+"update statistics "+name+ char(10) + "go"from sysobjectswhere (type='U' or type='S')order by name2、显示所有触发器的名称、建立时间SELECT USER_NAME(A.uid) 'Table Owner', 'Table Name', 'Trigger Name',CONVERT(char(10),A.crdate,101)+SUBSTRING(CONVERT(char(20),A.c rdate,0),13,7) 'Create Date'FROM sysobjects A,sysobjects BWHERE A.type='TR'AND (A.id=B.instrig OR A.id=B.updtrig OR A.id=B.deltrig)3、关于参照--生成建立已有参照的SQL语句select distinct result_sql='alter table '+rtrim(object_name(tableid))+' add constraint '+rtrim(object_name(constrid))+' foreign key('++col_name(sysreferences.tableid,sysreferences.fokey1)+substring(',',1,sysre ferences.fokey2)+col_name(sysreferences.tableid,sysreferences.fokey2)+substring(',',1,sysre ferences.fokey3)+col_name(sysreferences.tableid,sysreferences.fokey3)+substring(',',1,sysre ferences.fokey4)+col_name(sysreferences.tableid,sysreferences.fokey4)+substring(',',1,sysre ferences.fokey5)+col_name(sysreferences.tableid,sysreferences.fokey5)+substring(',',1,sysre ferences.fokey6)+col_name(sysreferences.tableid,sysreferences.fokey6)+substring(',',1,sysre ferences.fokey7)+col_name(sysreferences.tableid,sysreferences.fokey7)+') '+'references '+rtrim(object_name(reftabid))+'('+col_name(sysreferences.reftabid,sysreferences.refkey1)+substring(',',1,sys references.refkey2)+col_name(sysreferences.reftabid,sysreferences.refkey2)+substring(',',1,sys references.refkey3)+col_name(sysreferences.reftabid,sysreferences.refkey3)+substring(',',1,sys references.refkey4)+col_name(sysreferences.reftabid,sysreferences.refkey4)+substring(',',1,sys references.refkey5)+col_name(sysreferences.reftabid,sysreferences.refkey5)+substring(',',1,sys references.refkey6)+col_name(sysreferences.reftabid,sysreferences.refkey6)+substring(',',1,sys references.refkey7)+col_name(sysreferences.reftabid,sysreferences.refkey7)+')'+char(10)+"go"from sysreferences,syscolumns,sysobjectswhere sysreferences.tableid=sysobjects.idand sysobjects.id=syscolumns.idand sysobjects.type='U'order by go--生成删除参照的SQL语句select distinct result_sql='alter table'+rtrim(object_name(sysreferences.tableid))+' drop constraint'+rtrim(object_name(sysreferences.constrid))+char(10)+"go"from sysreferences,syscolumns,sysobjectswhere sysreferences.tableid=sysobjects.idand sysobjects.id=syscolumns.idand sysobjects.type='U'order by object_name(sysreferences.tableid)go4、关于表级锁--列出所有锁类型为行锁的表select namefrom sysobjectswhere type='U'and sysstat2 & 57344 = 32768and name not like "XT%"order by name--调优的方法有:调整锁类型,调整表的聚簇索引--调整表锁类型为行锁,可以提高对表的并发访问性能,但是同时也会占用更多的系统资源--修改行锁的SQL语句:alter table [table_name] lock [datarows|allpages] ----调整表的聚簇索引在数据插入时,降低对表的最后一页的争用--Sybase规定一张表只能有一个聚簇索引,所以在调整聚簇索引时,要先删除原有的聚簇索引,然后再建立新的--例如将SB_ZSXX表的在ZSXH上聚簇索引修改为在NSRSBH上的聚簇索引.--删除原聚簇索引PK_SB_ZSXXdrop index SB_ZSXX.PK_SB_ZSXXgocreate nonclustered index PK_SB_ZSXX on SB_ZSXX(ZSXH)go-- 建立IDX_SB_ZSXX_NSRSBH的聚簇索引drop index SB_ZSXX.IDX_SB_ZSXX_NSRSBHgocreate clustered index IDX_SB_ZSXX_NSRSBH on SB_ZSXX(NSRSBH)go--以上的索引信息可以用sp_help命令列出5、求出指定字段等于指定值的记录数declare @lc_colname varchar(30)--declare @lc_colvalue /*定义欲求值的变量,随着变量的类型定义不同的值*/--取包含指定列名的表select distinct name=object_name(id) into #AA from syscolumns where name = @lc_colname--生成SQL,求出指定字段等于指定值的记录数select "insert into #BB select tname='"+name+"',cnt=count(*) from"+name+" where " + @lc_colname + "='" + @lc_colvalue + "'"+char(10)+"go"from #AA--运行SQL--检查记录不为零的表,既为求出的表select * from #BB where cnt>06、列出所有无主键的表select name from sysobjectswhere name not in (SELECT object_name(id)FROM sysindexesWHERE indid > 0AND status2 & 2 = 2and status & 2048 = 2048)and type="U"order by name7、关于用户登录--锁定用户select "sp_locklogin "+name+",'lock'"+char(10)+"go"from sysloginswhere name not like "%prim%"and name not like "%maint%"and name not like "sa"order by name--解除锁定的用户select "sp_locklogin "+name+",'unlock'"+char(10)+"go"from sysloginswhere name not like "%prim%"and name not like "%maint%"and name not like "sa"order by name8、为ctais_maint授权select "grant all on "+name+" to ctais_maint"+char(10)+"go" from sysobjects where type="U"9、整理出字段类型有text和image的表--text类型select distinct name=object_name(id)from syscolumnswhere type=35and id in (select id from sysobjects where type="U")order by object_name(id)--image类型select distinct name=object_name(id)from syscolumnswhere type=34and id in (select id from sysobjects where type="U")order by object_name(id)10、修改identity列的最大值--设置包含identity列的表为可直接插入记录set identity_insert [table] [on|off]--插入一个比较大的值insert into [table] values([value])[本帖最后由echoaix 于2006-4-8 22:25 编辑]命令行登录isql -Sservername -Usa -P1.安装字符集charset -Usa -Ppassword -Sservername binary.srt utf8charset -Usa -Ppassword -Sservername nocase.srt utf82.设置字符集sp_configure 'default charac',1733.设置排序sp_helpsortsp_configure 'default sortorder_id',1014.Sybase数据库数据和日志空间不能自动扩展,需要手工管理。
SYBASE 11.5数据库安装维护基本手册

SYBASE 11.5数据库安装维护基本手册本文环境是在Windows 2000 server 上安装配置的一、SYBASE 11.5 的安装1、点击 SETUP 进行安装即可2、安装后的SYBASE 数据库的名字是以本机的名字命名的,如SERVER、SERVER_BS、SERVER_HS、SERVER_MS3、首先进入数据库,点用户名输入 sa,默认密码为空4、进入数据库=后,点 Dump Devices,在右边的视图中点右键,在弹出菜单中选 Dump Device 输入名字,如:control_dump,点Brows按钮,定位到F:DBcontrol_dump.dat点下一步,选择 Disk Dump Device即可5、创建Database Devices,点 Database Devices 项,在右边的视图中,在弹出的菜单中选New->Database Devices,创建数据空间,输入 control_data,定位到F:DBcontrol_data.dat,输入空间大小,如:300M;创建日志空间,输入control_log,定位到F:DBcontrol_log.dat,输入空间大小,如:200M;创建临时表空间,输入control_temp,定位到F:DBcontrol_temp.dat,输入空间大小,如:100M6、创建Database,点 Database 项,在右边的视图中,在弹出的菜单中选New->Database,输入数据库的名字,如:control,分别添加数据空间和日志空间,点Add ,选择 data,添加 control_data,输入300M;点 Add,选择Transaction Log ,选择control_log 日志空间,输入 200M即可,点下一步,选择 with overide即可7、创建数据库用户,点 Logins 项目,如:创建 system 用户,输入用户名和密码,添加角色,一般添加 sa_role即可8、回到Databases下,在右边的视图中点点击已经创建好的数据库 control ,在control 上右击,在弹出的菜单中点Properties ,在 General 属性页中选择 change ,选择 system 用户即可,这样就将数据库与用户关联到一起来了9、注意:在创建用户时,点 system 的 Properties 弹出 System Properties ,点 Roles,点 Add Role 加如角色,点 sa_role,然后点 sa_role ,点 Set Default ,设为默认即可,在system properties 中点sa_role 弹出sa_role properties 框,点 logins,点 sa,然后点 Set Default 即可,点system,然后点 set default 即可,这时可以看到两个yes 即可10、最后一步,点数据库名(sa),如 HYALT(sa) 或 SERVER(sa),在其上点右键,在弹出的菜单中选择 Configure ,有 total memory 一项,原来默认为9000K,即9M,根据需要可以改大些,如改为 45000K,即45 M,这要视内存大小而定这个参数的更改也可以在sybase 的安装目录下的HYALT.cfg 的[physical memory]物理内存的设置栏的 total memory=45000一项10、设置Sybase 的字符集可以在Sybase 的安装目录下的locales 目录,修改locales.dat 文件11、Sybase 11.5 在安装盘下会产生三个目录,一个是 pwrs,这个是Powerdesign 6的安装目录,一个是 Sybase 目录,还有一个是sybtools 目录12、Sybase 11.5 安装时进入启动是会出现缺少DLL,解决办法如下:进入Sybase Server安装盘下的Sybtools 目录下的asep 目录,将scsslgen.dll,t 分别对应改为 scsslgch.dll ,t 即可13、Sybase 数据导入与导出:导出:通过生成DDL 的方式,进入 Sybase Central ,点 Database ,在Control 数据库名上点右键,在弹出的菜单中选择 Generate Database Objects DDL,然后生成在 Sybase Tools Console ,将该文件存为 a.sql对一个数据库中已经有的数据,可以通过PB连接过去,将每一个表分别存为一个.txt文件,待新的数据库建好以后,在通过PB的IMPORT 菜单导入数据导入时:在命令行中输入:isql –SServer –Ucontrolpassword:sqlsql登陆后,将a.sql 中的dbo. 全部替换成空即可,然后将数据库名. 替换成dbo.即可,如数据库名为control ,就将 control.替换成dbo.即可,然后将a.sql 中的全部语句拷贝到命令行中运行即可,如果不将control.替换成dbo.的话,则数据库的关系未生成好,这样数据库的对象生成以后,就可以用PB将数据导入数据库,对于数据库中的有些数据表是要先导入的,有些数据库表是要后导入的其实,a.sql 中的语句可以直接放到PB执行SQL 的环境中去直接运行,只要将go改成;即可14、装好数据库客户端后,要配置一个数据库名:在安装好的程序组菜单中选择Dsedit,点 Server Object 下的 Add ,添加一个服务名,然后点刚才创建的服务名,在右边的 Server Address 上双击,点 Add,选 NLWNSCK 协议,在Network Address 栏中输入数据库服务器的IP地址和端口号,其格式为:200.114.163.206,5000 ,注意默认端口为5000。
Sybase数据库维护篇--高级

培 训 教 材
1
SYBASE
数据库(raid0,1,5)
培 训 教 材
2
SYBASE
数据库设备分配结构
培 训 教 材
3
SYBASE
数据库page分配结构
培 训 教 材
4
Sybase的多库结构
• • • • • • • • • 安装Sybase数据库时自动生成的下列系统数据库: ●主数据库master: 数据库全面控制和管理用户数据库以及SQLSERVER 上的一切操作。 ●模型数据库model: 为新建的用户数据库提供一个原形 ●系统过程数据库sybsystemprocs: SYBASE的系统存储过程被储存在这 个数据库中 ●临时数据库tempdb: 作为临时表和其他的临时工作空间提供一个存储区 域。 TEMPDB的空间为全体数据库用户共享也可选择下列数据库: ●安全审核数据库sybsecurity: 包含SQLSERVER的审计系统 ●示例数据库pubs2: 这是一个样本库 ●命令语法数据库sybsyntax: 为用户提供联机帮助用户数据库 用户数据 库是指用Create database 命令创建的数据库。 使用”use 数据库名”来切 换不同的数据库 执行sp_changedbowner 改变数据库的属主关系 建议 事务日志放在单独的设备上(log)
培 训 教 材
12
SYBASE
Index与性能-3
1:选择Clustered索引的建议: 主键时常作为where子句的条件 某一列经常以这样的格式出现在where表达式中(x<=column <="y)" 某一列非常频繁地被访问 某列被用作order by或group by 某列很少被改写 某列常出现在join中。 2:选择Non-Clustered索引的建议: 某列常用于Aggregate函数(如Sum,....) 某列常用于join,order by,group by。 查寻检索出的数据不超过表中数据量的20%
SYBASE数据库系统检查和日常维护命令指南

Sybase数据库系统检查与日常维护手册以下是对sybase数据库系统检查与日常维护的具体方法。
并且定义了每天日常检查,以及每月的定期维护命令。
进行下列操作前请先使用sybase用户登录主机。
命令字体为加粗且倾斜,命令中使用的一些需要检查人员根据各自数据库系统实际情况输入的参数加下划线表示,结果信息中需要特别关注的选项已加粗且倾斜标注。
1SYBASE日常维护1.1 sybase数据库服务器运行状态检查检查方法:使用showserver命令,不带任何参数,观察命令的返回信息。
结果判断,详见下表:bash-2.05$ showserver显示如下信息,包含sybaseserver 与bakupserver 两个server信息F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME CMD000 S sybase 1003 1000 0 76 0 - 2253 schedu 09:19 ? 00:00:00 /opt/sybase-12.5/ASE-12_5/bin/backupserver -e/opt/sybase-12.5/ASE-12_5/install/S000 S sybase 1001 996 1 75 0 - 16042 schedu 09:19 ? 00:00:47 /opt/sybase-12.5/ASE-12_5/bin/dataserver -d/opt/sybase-12.5/ASE-12_5/install/mas执行周期:可随时执行。
1.2 SYBASE数据库运行状态检查检查方法:isql命令行登录数据库,使用sp_helpdb命令,不带任何参数,观察命令的返回信息。
结果判断,详见下表:命令举例:bash-2.05$ isql –Usa -P保密字:1> sp_helpdb2> goname db_size owner dbidcreatedstatus------------------------ ------------- ------------------------ ------------------------------------------------------------------------------------------------------------------------------archivedb 100.0 MB sa 6Sep 06, 2006read only, no free space acctg, archive, compressedksqhdb 5000.0 MB sa 4Sep 05, 2006select into/bulkcopy/pllsortmaster 50.0 MB sa 1Sep 05, 2006mixed log and datamodel 2.0 MB sa 3Sep 05, 2006mixed log and datascratchdb 400.0 MB sa 5Sep 06, 2006scratchsybsystemdb 3.0 MB sa 31513Sep 05, 2006mixed log and datasybsystemprocs 124.0 MB sa 31514Sep 05, 2006trunc log on chkpt, mixed log and datatempdb 3.0 MB sa 2Sep 07, 2006select into/bulkcopy/pllsort, trunc log on chkpt, mixed log and data(1 row affected)name attribute_classattribute int_valuechar_valuecomments------------------------------ ------------------------------------------------------------ -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------archivedb Archive Database Accessdump device NULL/tmp/ksqhdb20060801.dmp.gzNULLarchivedb Archive Database Accessscratch database NULLscratchdbNULL(return status = 0)1.3 Sybase数据库逻辑日志空间检查检查方法:isql命令行登录数据库,use dbname选择需要查看信息的数据库,使用sp_helpsegment logsegment或dbcc checktable(syslogs)命令,观察命令的返回信息。
sybase常用命令

70年代,随着大型共享数据库应用的普及,美国SYBASE公司基于当时的关系代数理论所提出的数据库关系模型,开发了Sybase数据库系统;Sybase是基于SQL(Structured Query Language)的著名关系模型数据库系统,是世界上最流行的DBMS软件之一;它能在多种计算机硬件平台上运行,并能通过连网形成分布式数据库环境;SQL Server是指运行在主机上,能提供SQL语言查询、修改或控制数据库中内容等操作的一个服务进程,形象地把它理解为一个数据库服务器;一般地数据库服务器有Data Server 和 Backup Server两个服务进程组成。
数据库就是一系列表格(关系)所描述的客观世界中事实的集合;Sybase中的系统数据库基本包括有:master、model、sysprocs、 tempdb,其它为用户库。
Sybase Adaptive Server Enterprise 12.5是Sybase公司开发的智能型数据库。
现场Sybase数据库系统结构1.1 参考资料《SYBASE 数据库维护快速参考手册 Version 1.1》,SYBASE公司出版2 基础操作、配置和维护2.1 安装Sybase 12.5包括安装前环境配置、安装过程说明、安装成功测试、卸载等。
(详细请参考V1.00》)2.2 访问SQL Server在安装配置好的Sybase服务器,可以通过以下操作开始访问SQL Server进行数据的查询和控制等操作:? % isql –U用户名–S服务名password: //该处输入该明户的密码2.3 Sybase的启动和关闭2.3.1 启动Sybase数据库在$SYBASE/ASE-12_5/install目录下执行startserver命令启动Sybase数据库,如:%$SYBASE/ASE-12_5/install/startserver -f RUN_服务名%$SYBASE/ASE-12_5/install/Startserver –f RUN_服务名_BAKUP2.3.2 关闭Sybase数据库使用isql命令登录Sybase数据库系统,在查询sysservers表查看可关闭的服务,如isql –Usa -SjoliPassword:1> select * from sysservers一般需要关闭的服务有:系统备份服务、系统主服务在isql提示里先关闭系统备份服务(默认为SYB_BACKUP),再关闭主服务(默认可以不输入主服务名),如:1>shutdown SYB_BACKUP2>go1>shutdown2>go2.4 Sybase用户管理2.4.1 创建登录用户(login)sp_addlogin login_name,passwd[,defaultdb[,deflanguage[,fullname]]] 例子:1> sp_addlogin joli,joli,joli_db2> go2.4.2 删除登录用户(login)例子:1> sp_droplogin test2> go2.4.3 创建数据库用户(user)sp_adduser login_name[,name_in_db[,grpname]]例子:1> sp_adduser joli,joli2> go2.4.4 删除数据库用户(user)例子:1> sp_dropuser test2> go2.4.5 修改该用户为该数据库dbo例子:1>use joli_db3> sp_changedbowner joli2.4.6 查看数据库用户信息sp_displaylogin [login_name]sp_helpuser例子:1> sp_helpuser2> go1> sp_displaylog joli2> go1> sp_who2.4.7 修改用户口令如果是修改sa口令,可用sa用户登录,然后执行以下命令修改1>sp_password “旧命令| null”,”new_password”2>go如果不是sa用户,则使用希望修改口令的user登录数据库,然后执行1> sp_password 旧命令,新命令2> go2.4.8 修改系统缺省设备? 关闭创建数据库master缺省设备:? 1>exec sp_diskdefault "master","defaultoff"? 指定user_db_dev为缺省设备:? 1>exec sp_diskdefault "user_db_dev","defaulton"2.5 创建、删除、修改Sybase设备、数据库2.5.1 创建设备例子:1> disk init2> name="joli_dev",3> physname="/opt/sybase/joli/joli_dev.dat",4> vdevno=9,5> size=512006> go说明:物理设备名称为:joli_dev物理设备文件路径为:/opt/Sybase/joli/joli_dev.dat设备编号(该号不能重复)为:9大小(单位为2K)为:100M(一般为用户数据库创建一个数字设备后,再单独为用户数据库创建一个日志设备)2.5.2 镜像设备例子:1> disk mirror2> name="joli_dev",3> mirror="/opt/sybase/joli/joli_dev_mirror.dat"4> go说明:创建设备joli_dev的镜像,镜像后的镜像设备为/opt/sybase/joli/joli_dev_mirror.dat。
sybase常用命令

sybase常⽤命令⼀、SQL Advantage使⽤先点击server,⾥⾯点击connect连接到sybase服务端,开⼀个新窗⼝,写⼀些sql执⾏即可(ctrl+e)⼆、启动和关闭数据库,查看表结构1.看所有的库sp_helpdb2.使⽤⼀个库use 库名(注意⼤⼩写)3.查看⽤户下所有表名select name from sysobjects where type='U'或sp_tables4.查看表结构sp_help 表名(注意⼤⼩写)5.显⽰结果只显⽰⼀⾏set rowcount 1go输⼊你想查询的sql语句,记得最后要set rowcount 0go6.启动数据库[sybase@rosan128main install]$ pwd/opt/sybase/ASE-12_5/install[sybase@rosan128main install]$ startserver -f RUN_rosantech7.关闭数据库先要看启动了什么服务1> select srvname from sysservers2> gosrvname------------------------------SYB_BACKUPloopbackrosanljw_BSrosantech(4 rows affected)关闭备份服务1> shutdown SYB_BACKUP2> go关闭1> shutdown2> go如果关不上1> sp_lock2> goThe class column will display the cursor name for locks associated with a cursorfor the current user and the cursor id for other users.fid spid loid locktype table_id pagerow dbname classcontext------ ------ ----------- ---------------------------- ----------- ----------------- --------------- ----------------------------------------------------------0 57 114 Sh_intent 32000114 00 master Non Cursor Lock(1 row affected)(return status = 0)1> kill 57(spid只可以杀除⾃⼰会话以外的会话)杀掉再shutdown就好了如果关不动,可以⽤以下命令,慎⽤shutdown with nowait三、dml和ddl1.建表use testgocreate table table1(test varchar(10))go--仿照table1建⽴table2select * from table1 into table2go----------------------------------------------------------------------------------------如果不能仿照需要修改⼀些参数sp_helpdb db_name --查看SELECT into选项是否开启,没开需要⼿动开启gouse mastergosp_dboption test,'select into',true --(test为db_name)gocheckpointgouse testgoselect * from table1 into table2go四、⽤户管理1.创建登陆⽤户(login)1> sp_addlogin ljw1911,rosantech,test --依次为⽤户名,密码,默认数据库2> goPassword correctly set.Account unlocked.New login created.(return status = 0)2.删除登陆⽤户(login)1> sp_droplogin ljw19112> go3.创建数据库⽤户(user)1> sp_adduser ljw19112> goNew user added.(return status = 0)4.删除数据库⽤户(user)1> sp_dropuser ljw19112> go2.4.5 第六页了五、sybase ASE参数配置(1)服务器级配置使⽤存储过程sp_configure配置ASE (和oracle的show parameter很像)1. 语法sp_configure [configname[, configvalue] | group_name | non_unique_parameter_fragment]2. 作⽤查询服务器运⾏的当前值设置服务器运⾏参数⽤ "sp_configure mem" 可以查看带有mem关键字的参数的具体配置,然后⽤ "sp_configure 参数, 值" 来配置新例1. 配置内存1)数据库使⽤内存指定ASE拥有的总的共享内存⼤⼩sp_configure“max memory”,nnn(单位为2K)( HP平台推荐物理内存的75%,其他平台80%)sp_configure‘allocate max shared mem’,1(数据库服务启动时就分配内存)(推荐为1)2)配置缺省数据缓存的⼤⼩和分区sp_cacheconfig‘default data cache’,’xxxM’sp_cacheconfig‘default data cache’,’cache_partition=n’(根据CPU个数以及内存⼤⼩确定,需为2的N次⽅)3)配置存储过程的缓存⼤⼩sp_configure“procedure cache size”,nnn(单位为2K)例2. 配置CPUsp_configure‘max online engines’,n(cpu个数> 2时推荐CPU数⽬减1)sp_configure‘number of engines at startup’,n3. 其他1). number of devices (⽤户⾃⼰确定)指定ASE的可创建和打开的数据库设备的最⼤号数2). number of locks (⽤户⾃⼰确定)指定ASE可同时打开的锁的最⼤数⽬3). number of open objects (推荐8000-20000)ASE的对象描述的缓存数4)number of open indexes (推荐2000-5000)ASE的索引描述的缓存数5) stack size (如果有超长SQL和多层嵌套,推荐*2)数据库堆栈的⼤⼩6). default character set id(推荐使⽤cp936 –id 171)数据库服务器使⽤的字符集7). allow updates to system tables指定系统管理员是否可以更改系统表中的数据8)row lock promotion HWM,row lock promotion LWM⾏锁升级为表锁的阀值9)page lock promotion HWM,page lock promotion LWM页锁升级为表锁的阀值10) lock scheme缺省的对表加的锁类型(缺省为页锁)(2)数据库级配置使⽤存储过程sp_dboption更改数据库的数据库选项1. 语法sp_dboption[dbname, optname, {true | false}]2. 作⽤罗列出所有的数据库选项更改某个数据库的数据库选项3. 常见的数据库选项trunclog on chkpt⾃动清⽇志(不能再做增量备份)select into/bulkcopy允许快速BCP,selectintoddlin tran允许事务中创建对象修改完成以后可以通过sp_helpdb查看到例⼦:1> use master2> go1> sp_dboptionuserdb, "trunclog on chkpt", true2> go数据库‘userdb'的数据库选项'trunclog on chkpt'被打开。
Sybase命令集

27、select name,id from syscharsets go————查看系统字符集的安装状态
28、charset –Usa –P –Spc109 binary.srt cp936————将中文字符集cp936添加到系统中。在字符集目
Sybase命令
清理日志空间
dump tran master with no_log
go
dump tran sgsovsc with no_log
go
dump tran sgsovsc with truncate_only
go
//查看当前已经安装的字符集
use master
9、sp_helpdevice go—————查看sybase的数据设备信息
select name,phyname,vdevno,low from master..sysdevices where name=’master’ go
10、use master go
disk init
name=’spamms’,
\sybase\
locales\locales.dat
找到NT,修改最后一行配置为locale = default, us_english, cp936
//bcp命令
bcp ovsc..maxspeed out D:\cc.txt -Usa -Shunter -c -t "|"
online database dbname
表数据备份恢复
bcp dbname..tablename {out|in} c:\XXX -Usa -Ppassword –Sservername -Jutf8 –c -y
Sybase 常用命令介绍(chenyi)

1.1 常用命令介绍1.1.1 数据库操纵命令1.1.1.1 ISQL语法举例:isql –Usa –P –SSYSMIS {> filename{< filename}}说明:-U:用户名;-P:口令;-S:SERVER名。
SERVER名必须在$HOME/interfaces中有定义,其作用相当于PC CLIENT端的sql.ini,其维护工具是$HOME/install/sybinit,相当于PC CLIENT端的sqledit.exe。
注意在使用sybinit定义SERVER时,IP地址在/etc/hosts文件中须有定义(如“192.9.202.201 hb1”),否则在定义过程中会有警告信息,但不影响使用。
1.1.1.2 dbcc checkdb作用:检查数据库状态。
语法举例:dbcc checkdb(DATABASE NAME)。
说明:一般情况下该命令与dbcc checkalloc、dbcc checktable 配合使用,以检查数据库的使用情况。
根据命令显示结果进行维护操作,该命令的输出显示一般为以下文本:……Checking syslogsThe total number of data pages in this table is 225.*** NOTICE: Space used on the log segment is 0.44 Mbytes, 0.88%.*** NOTICE: Space free on the log segment is 49.56 Mbytes, 99.12%.Table has 5168 data rows.……Checking csszh_csdjThe total number of data pages in this table is 1.Table has 16 data rows.……DBCC execution completed. If DBCC printed error messages, contact a user with System Administrator (SA) role.若显示结果与上述有异,则结合其它dbcc命令确定具体是什么错误,报错时会显示Msg号,根据Msg号,采取相应的解决方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Sybase是基于SQL(Structured Query Language)的著名关系模型数据库系统,是世界上最流行的DBMS 软件之一;它能在多种计算机硬件平台上运行,并能通过连网形成分布式数据库环境;SQL Server是指运行在主机上,能提供SQL语言查询、修改或控制数据库中内容等操作的一个服务进程,形象地把它理解为一个数据库服务器;一般地数据库服务器有Data Server 和 Backup Server两个服务进程组成。
数据库就是一系列表格(关系)所描述的客观世界中事实的集合;Sybase中的系统数据库基本包括有:master、model、sysprocs、 tempdb,其它为用户库。
Sybase Adaptive Server Enterprise 12.5是Sybase公司开发的智能型数据库。
现场Sybase数据库系统结构1.1 参考资料《SYBASE 数据库维护快速参考手册 Version 1.1》,SYBASE公司出版2 基础操作、配置和维护2.1 安装Sybase 12.5包括安装前环境配置、安装过程说明、安装成功测试、卸载等。
(详细请参考V1.00》)2.2 访问SQL Server在安装配置好的Sybase服务器,可以通过以下操作开始访问SQL Server进行数据的查询和控制等操作:? % isql –U用户名–S服务名password: //该处输入该明户的密码【2.3 Sybase的启动和关闭】2.3.1 启动Sybase数据库在$SYBASE/ASE-12_5/install目录下执行startserver命令启动Sybase数据库,如:%$SYBASE/ASE-12_5/install/startserver -f RUN_服务名 -主%$SYBASE/ASE-12_5/install/Startserver –f RUN_服务名_BAKUP -备份2.3.2 关闭Sybase数据库使用isql命令登录Sybase数据库系统,在查询sysservers表查看可关闭的服务,如isql–U sa -S joliPassword:1> select * from sysservers2> go一般需要关闭的服务有:系统备份服务、系统主服务在isql提示里先关闭系统备份服务(默认为SYB_BACKUP),再关闭主服务(默认可以不输入主服务名),如:1>shutdown SYB_BACKUP2>go1>shutdown2>go2.4 Sybase用户管理2.4.1 创建登录用户(login)sp_addlogin login_name,passwd[,defaultdb[,deflanguage[,fullname]]] 例子:1> sp_addlogin joli,joli,joli_db2> go2.4.2 删除登录用户(login)例子:1> sp_droplogin test2> go2.4.3 创建数据库用户(user)sp_adduser login_name[,name_in_db[,grpname]]例子:1> sp_adduser joli,joli2> go2.4.4 删除数据库用户(user)例子:1> sp_dropuser test2> go2.4.5 修改该用户为该数据库dbo例子:1>use joli_db3> sp_changedbowner joli2.4.6 查看数据库用户信息sp_displaylogin [login_name]sp_helpuser例子:1> sp_helpuser2> go1> sp_displaylog joli2> go1> sp_who2> go2.4.7 修改用户口令如果是修改sa口令,可用sa用户登录,然后执行以下命令修改1>sp_password “旧命令| null”,”new_password”2>go如果不是sa用户,则使用希望修改口令的user登录数据库,然后执行1> sp_password 旧命令,新命令2> go2.4.8 修改系统缺省设备? 关闭创建数据库master缺省设备:? 1>exec sp_diskdefault "master","defaultoff"? 指定user_db_dev为缺省设备:? 1>exec sp_diskdefault "user_db_dev","defaulton"2.5 创建、删除、修改Sybase设备、数据库2.5.1 创建设备例子:1> disk init2> name="joli_dev",3> physname="/opt/sybase/joli/joli_dev.dat",4> vdevno=9,5> size=512006> go说明:物理设备名称为:joli_dev物理设备文件路径为:/opt/Sybase/joli/joli_dev.dat设备编号(该号不能重复)为:9大小(单位为2K)为:100M(一般为用户数据库创建一个数字设备后,再单独为用户数据库创建一个日志设备)2.5.2 镜像设备例子:1> disk mirror2> name="joli_dev",3> mirror="/opt/sybase/joli/joli_dev_mirror.dat"4> go说明:创建设备joli_dev的镜像,镜像后的镜像设备为/opt/sybase/joli/joli_dev_mirror.dat。
检查某设备是否被镜像,可使用“sp_helpdevice 设备名”查看。
2.5.3 终止设备镜像终止设备可分为:终止主设备和终止次设备两类,同时还可选择是临时性终止还是永久性终止。
(如果是永久终止,还需要在操作系统上删除物理设备文件)disk unmirrorlang="EN-US">"[,side=”{primary|secondary}]”[,mode={retain|remove}]//终止主/次设备:primary/secondary (缺省次)//临时/永久终止:retain/remove (缺省临时)例子:1)临时终止主设备1> disk unmirror2> name="joli_dev",3> side="primary",4> mode=retain5> go2)永久终次主设备1> disk unmirror2> name="joli_log_dev",3> side="primary",4> mode=remove5> gon 恢复临时终止的镜像:例子:1> disk remirror2> name="joli_dev"3> go2.5.4 删除设备需要确定该设备上没有数据库。
例子:1> sp_dropdevice test_dev2> go再删除操作系统设备文件。
2.5.5 查看设备状态例子:1> sp_helpdevice [设备名]2> go说明:可查看设备是否镜像(相关镜像类型、是否有临时取消镜像等)等配置。
2.5.6 创建数据库例子:1> create database joli_db on joli_dev=50 log on joli_log_dev=202> go说明:创建用户数据库joli_db,该数据库数据存储在设备joli_dev设备上,可使用大小为50M;日志存储在joli_log_dev设备上,可使用大小为20M。
2.5.7 扩展数据库:alter database db_name on device_name=size,device_name =size log on device_name=size,device_name=size例子:1> alter database joli_db on joli_dev=10 log on joli_log_dev=52> go说明:数据库joli_db在设备数字joli_dev上扩展10M,在日志设备joli_log_dev上扩展5M。
2.5.8 删除数据库:drop database db_name例子:3> drop database joli_db4> go2.5.9 上线数据库例子:1> online database db_name2> go2.5.10 检查数据库状态n 一般性检查1>sp_helpdb2>gon 系统性检查所有库检查:1> dbcc checkdb2> go指定用户数据库检查:1> dbcc checkalloc(joli_db)2> go2.6 Sybase日志管理在创建用户数据库的时候,应尽量为事务日志创建独立的日志设备(一般创建为数据库大小的20%),这样可以单独备份事务日志、防止数据库溢满、可以看到事务日志的占用情况及可以镜像等。
dump transaction db_name with truncate_only //不备份事务日志,直接清除。
dump transaction db_name with no logdump transaction db_name to “路径/名字” //备份事务日志n 检查log大小1> dbcc checktable(syslogs)2> go快速查看log大小1> select data_pgs(8,doa mpg)2> from sysindexes where id=83> go2.7 修改Sybase系统缺省参数可修改$SYBASE/ASE-12_5目录“服务名.cfg”文件,重新启动Sybase服务来修改Sybase系统参数。
也可使用Sp_configure来修改部分动态参数。
n 查询当前所有的参数配置1>sp_configure2>gon 查询可动态修改的参数1>sp_configure “abcdef”2>gon 查询特定参数的配置情况1>sp_configure “参数名2>go”n 修改可动态配置的参数1> sp_configure “参数名”,值2> go一般可视情况酌情修改以下参数:cache size、number of open databases、number of open objects、number of open indexes、 partition groups、number of large i/o buffers、 number of devices、default network packet size、 max network packet size、number of remote connections、number of remote logins、number of worker processes。