Sybase 单用户模式介绍

合集下载

Sybase数据库简介

Sybase数据库简介

Sybase数据库简介1.1Sybase数据库简介1.1.1版本1)sybase的产生1984年,Mark B. Hiffman和Robert Epstern创建了Sybase公司。

随着大型共享数据库应用的普及,美国SYBASE公司基于当时的关系代数理论所提出的数据库关系模型,并在1987年推出了Sybase 数据库产品;Sybase是基于SQL(Structured Query Language)的著名关系模型数据库系统,是世界上最流行的DBMS软件之一;它能在多种计算机硬件平台上运行,并能通过连网形成分布式数据库环境;2)SQL Server数据库服务器SQL Server是指运行在主机上,能提供SQL语言查询、修改或控制数据库中内容等操作的一个服务进程,形象地把它理解为一个数据库服务器;一般地数据库服务器有Data Server 和 Backup Server两个服务进程组成。

数据库就是一系列表格(关系)所描述的客观世界中事实的集合;Sybase中的系统数据库基本包括有:master、model、sysprocs、tempdb,以及样本库pubs2和语法库syntax,其它为用户库。

1.1.2Sybase数据库的特点(1)它是基于客户/服务器体系结构的数据库一般的关系数据库都是基于主/从式的模型的。

在主/从式的结构中,所有的应用都运行在一台机器上。

用户只是通过终端发命令或简单地查看应用运行的结果。

而在客户/服务器结构中,应用被分在了多台机器上运行。

一台机器是另一个系统的客户,或是另外一些机器的服务器。

这些机器通过局域网或广域网联接起来。

它支持共享资源且在多台设备间平衡负载;允许容纳多个主机的环境,充分利用了企业已有的各种系统。

(2)它是真正开放的数据库由于采用了客户/服务器结构,应用被分在了多台机器上运行。

更进一步,运行在客户端的应用不必是Sybase公司的产品。

对于一般的关系数据库,为了让其它语言编写的应用能够访问数据库,提供了预编译。

sybase培训资料

sybase培训资料
Sybase基础
时间:2012-01-10

学习完本课程,您应该能够: 掌握Sybase特点及基本组成 掌握Sybase的启动和关闭、备份与恢复 掌握Sybase的基本信息及配置的查询 掌握Sybase的基本维护及常见问题处理
1
第一节

Sybase简介
2
Sybase简介

1984年,Mark B. Hiffman和Robert Epstern创建了Sybase公司, 并在1987年推出了Sybase数据库产品。 Sybase主要有三种版本,一是UNIX操作系统下运行的版本,二是 Novell Netware环境下运行的版本,三是Windows NT环境下运行
5
数据库对象



表 视图 索引 存储过程 触发器 缺省与规则
Tables Views Index Stored procedures Triggers Defaults and rules
6
数据库用户


sa用户 数据库属主(dbo) 数据库对象属主 数据库普通用户

数据库属主(dbo)用户可对本数据库中所 有对象(如表、视图、存储过程等)进行操 作
14
Sybase数据库的关闭

到/opt/sybase/OCS-12_0/bin目录下执行isql语句 #cd /opt/sybase/OCS-12_0/bin #./isql -Sipnmsdb -Usa -P 1>shutdown RUN_ipnmsdb_BS 2>go 关闭Sybase备份服务器 1>shutdown 2>go 关闭Sybase主服务器
21
查看进程状态

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 基础知识及操作

Sybase 基础知识及操作
删除段 删除段是缩小段范围的一个特例: sp_dropsegment 段名,数据库名
Sybase基础知识及操作
培训目的概述
• 本次培训从Sybase ASE基础知识开始,一步一步了解 Sybase ASE的相关概念和体系结构,初步掌握Sybase 数据库
• 从安装到配置、从设备到数据库、从数据库对象到编 程、从实用工具到性能调优,了解Sybase数据库相关 原理
• 对Transact-SQL进行阐述,对其内部函数、顺序分枝 循环结构、存储过程和函数进行讲解
使用isql –Usa –P登陆上数据库 1) Shutdown 关闭ASE 2) Shutdown SYB_Backup关闭备份服务器 3) Sms_shutdown 关闭监控服务器 4) 使用kill 命令
先showserver 再kill pid
段(segment)
是数据库设备上磁盘空间的逻辑组合,设备与段的关系是多
connection 3)每个设备在 SQL Server 中增加一个连接 4)利用 sp_helpdevice [设备名]查看设备信息 5)最大设备数: 255
转储设备
转储设备一般用于备份数据库 Sp_addumpdevice “type”,device_name,physicalname 例如
➢控制空间的使用:放在一个段的数据库对象不会在段外增 长 ➢提高性能:处于不同磁盘设备上的段可以并行读写 ➢处理大表:利用段,可以将一个大表分段的放大独立的物 理设备上,如将一个表的文本或图象数据存储另外一个段上
创建段
➢在某个数据库中创建片段之前需要做两件准备工作: ➢用disk init初始化设备 ➢用create database或alter database命令将数据库设备分配给 数据库 ➢然后执行下列命令: ➢sp_addsegment 片段名,数据库名,设备名

Sybase数据库教程

Sybase数据库教程

数据定义语言(DDL)
包括CREATE、ALTER、DROP等语句,用 于定义和管理数据库对象。
数据控制语言(DCL)
包括GRANT、REVOKE等语句,用于控制 对数据库对象的访问权限。
查询优化策略分享
索引优化
合理使用索引可以大大提 高查询效率,包括聚集索 引和非聚集索引。
分区技术
将大表分成若干个小表, 可以提高查询和维护的效 率。
创建和删除数据库对象
创建数据库
使用`CREATE DATABASE`语句,指 定数据库名称、大小、增长参数等。
删除数据库
使用`DROP DATABASE`语句,注意 要谨慎操作,避免误删重要数据。
创建表
使用`CREATE TABLE`语句,定义表 结构、字段类型、约束等。
删除表
使用`DROP TABLE`语句,可以删除 整个表及其所有数据。
通过执行计划分析SQL语句的执行效率,找出可能的性能瓶颈,如 缺少索引、不必要的表扫描等。
数据库日志分析
定期检查数据库日志,了解数据库的运行状况,发现潜在的性能问 题。
优化数据库设计
规范化设计
通过数据库规范化设计,消除数据冗余,提高数据一 致性和完整性。
索引优化
根据查询需求合理创建索引,避免全表扫描,提高查 询效率。
能优化建议,提供索引、分区等优化方案。
第三方性能调优工具
03
根据需要选择适合的第三方性能调优工具进行更深入的性能分
析和优化。
THANKS
感谢观看
别进行优化,提高系统性能。
安全性
Sybase数据库支持多种操作系统 和硬件平台,提供了丰富的API 和开发工具,方便用户进行二次 开发。

Sybase数据库----客户服务器体系结构

Sybase数据库----客户服务器体系结构

Sybase数据库----客户服务器体系结构Sybase公司成立于1984年11月,总部设在美国加州的Emeryville(现为美国加州的Dublin市)。

作为全球最大的独立软件厂商之一,Sybase公司致力于帮助企业等各种机构进行应用、内容及数据的管理和发布。

Sybase的产品和专业技术服务,为企业提供集成化的解决方案和全面的应用开发平台。

Sybase作为享誉全球的跨国公司,在63个国家设立了分支机构,拥有4万多家客户,主要集中在金融服务业、政府部门、电信、医疗保健和媒体服务业。

Sybase 公司是全球领先的企业集成解决方案供应商,不仅拥有业界最完整的企业数据管理系统、领先的企业门户产品以及移动与无线解决方案,还致力于整合各种应用平台、数据库和应用软件。

作为全球最大的独立软件厂商之一,Sybase解决方案将企业信息流转换成经济效益,便于企业在恰当的时间把准确的信息提供给合适的人群,使企业从数据资产中获取最大利益。

Sybase公司一向认为:软件的价值在于应用。

在"用户第一,市场第二;服务第一,销售第二"的市场发展策略指导下,Sybase与用户共担风险,共同前进,稳步发展。

如今,Sybase在中国的员工总数近200人,成为Sybase公司发展最快的海外分支机构之一。

为了更好地给国内用户提供一流的技术支持和服务,Sybase已陆续在上海、成都、广州等地设立了办事处,合作伙伴更是遍布全国各地。

自进入中国以来,Sybase一直致力于同国内外应用软件提供商、国内教育、科研部门的合作,积极引入符合国情的应用软件,并大力扶植代理商和集成商,为中国的用户架起通向互联经济的桥梁。

Sybase公司一直面向电信、证券、金融、政府、交通与能源等领域稳步发展。

尤其是在电信行业一直在同行业中处于领先地位。

该季度中屡获殊荣的Sybase数据库产品先后博得了北京、云南、山东、河北、江苏等省市地区电信、移动及联通公司的青睐,并且在云南、河北等省7号信令网管系统项目中力拔头筹,一举中标。

SYBASE安装、调优、备份参考手册

SYBASE安装、调优、备份参考手册

目录1.概述、约定 (1)2.安装SYBASE的方法和注意事项 (1)2.1Solaris的参数调整 (1)2.1.1修改共享内存上限 (1)2.2安装SYBASE (2)2.3创建DATABASE (3)2.4tempdb的调优 (4)3.数据参数配置以及调优注意事项 (5)3.1内存配置及调优 (5)3.1.1ASE内存结构 (5)3.1.2内存参数调整 (5)3.1.3CACHE的配置 (7)3.1.3.1调优异步预取百分比 (7)3.1.3.2Procedure Cache (7)3.1.3.3日志缓存 (7)3.1.3.4数据缓存 (8)3.1.3.5tempdb cache (8)3.2磁盘、异步IO性能调优 (9)3.2.1数据设备性能调整 (9)3.2.2相关的配置参数调整 (9)3.2.3dbcc 调优部分 (10)3.3锁的配置和调优 (10)3.4多CPU环境下的引擎配置 (11)3.5查询并行度的调优 (11)3.6其他参数的调整 (11)4.备份和恢复的建议 (13)4.1非日志模式 (13)4.1.1备份 (13)4.1.2恢复 (13)4.2日志模式 (13)4.2.1备份 (13)4.2.2恢复 (14)4.3利用阀值自动管理日志设备空间 (14)附件:利用CRONTAB定时备份SYBASE数据库(solaris + sybase 12.5) (16)1.概述、约定本参考手册,是基于Solaris8 + ASE15下编制的。

假设Solaris已经顺利安装完毕,并且安装完成相关的GNU软件;对于Solaris的安装以及GNU软件的安装请参考其他相关文档。

2.安装SYBASE的方法和注意事项2.1Solaris的参数调整2.1.1修改共享内存上限OS可以限制共享内存的大小;而SYBASE的CACHE等内存环境,都是使用的共享内存;缺省的OS的共享内存上限不足以满足设置CACHE的需要,因此需要修改OS的共享内存上限参数。

Sybase基础教程

Sybase基础教程
第三讲 数据库与事务日志 .............................................................................................. 8 一、创建用户数据库 ................................................................................................. 8 二、更改数据库 ........................................................................................................ 8 三、事务日志.........................Байду номын сангаас.................................................................................. 9
第四讲 数据库安全性与用户管理.................................................................................. 10 一、安全管理概述................................................................................................... 10 二、理解数据库角色 ............................................................................................... 10 三、服务器的帐户管理.............................................................................................11 四、数据库用户管理 ................................................................................................11 五、用户的权限管理 ............................................................................................... 12
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单用户模式的作用?
全库单用户模式:每次只有一个用户可以登录数据库
用户数据库单用户模式:当singleuser设置为true时,每次只有一个用户可以操作数据库,比如执行checkpoint、load等操作时如果有了其他用户先登录,那么将会执行不成功,提示单用户的原因。

如何设置某个数据库的单用户模式?
isql-Usa-Ppwd
1>usemaster
2>go
1>sp_dboptionDBNAME,"singleuser",true(true打开,false关闭)
2>go
1>useDBNAME
2>go
1>checkpoint
2>go
如何设置整个数据库的单用户模式?
启动数据库是带上-m选项
startserver-m
以单用户方式启动SQLServer,该方式一般用于恢复master数据库。

每次只有一个用户可以登录数据库,如果第2个用户登录时将会报错。

sybase11.9.2.4上报错内容为:
Msg4002,Level14,State1:
Loginfailed.
什么时候需要启用单用户模式?
1、使用fix选项改正分配错误时
使用dbcccheckalloc,dbcctablealloc,dbccindexalloc的fix选项时
2、要将任何系统表,包括事务日志syslogs捆绑到高速缓存时
比如将syslogs捆绑到pubs_log高速缓存时,命令:sp_bindcachepubs_log,p ubs2,syslogs
3、用户数据库的系统表的索引损坏时,将用户数据库置于单用户模式以便修复索引
4、恢复master数据库(startserver-m)。

相关文档
最新文档