sybase-系统管理员培训课件_第1页
sybase-系统管理员培训课件_第2页
sybase-系统管理员培训课件_第3页
sybase-系统管理员培训课件_第4页
sybase-系统管理员培训课件_第5页
已阅读5页,还剩159页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Sybase培训Sybase培训1、sybase简介2、sybase安装3、数据库客户端与服务端配置4、设备与数据库的管理5、数据库的安全管理6、系统参数设置与性能调优7、数据库对象管理(sql语句)8、浪潮通软常用表及结构9、数据库备份与恢复10、其他主要内容:主要内容:一、Sybase公司及其产品简介一、Sybase公司及其产品简介SYBASE主要的三种版本:◆UNIX操作系统下运行的版本

NovellNetware环境下运行的版本◆WindowsNT环境下运行的版本

一、Sybase公司及其产品简介SYBASE主要的三种版本:◆UNIX操作系统下运行的版本Sybase数据库的特点:

◆基于客户/服务器(c/s)体系结构的数据库其好处:1、支持共享资源且在多台设备间平衡负载2、允许容纳多个主机的环境,充分利用了企业已有的各种系统◆真正开放的数据库◆高性能的数据库体现在:1、可编程数据库2、事件驱动的触发器3、多线索化

一、Sybase公司及其产品简介Sybase数据库的特点:◆基于客户/服务器(c/s)体系Sybase数据库的组成:

◆进行数据库管理和维护的一个联机的关系数据库管理系统:SybaseSQLServer

它是整个Sybase产品的核心软件,起着数据管理、高速缓冲管理、事务管理的作用◆支持数据库应用系统的建立与开发的一组前端工具:SybaseSQLToolset

ISQL、DWB、APT◆把异构环境下其它厂商的应用软件和任何类型的数据连接在一起的接口:SybaseOpenClient/OpenServer

通过OpenClient的DB-LIB库,应用程序可以访问SQLServer。而通过OpenServer的SERVER-LIB,应用程序可以访问其它的数据库管理系统。

一、Sybase公司及其产品简介Sybase数据库的组成:◆进行数据库管理和维护的一个联机三、Sybase安装

服务器上安装SYBASE服务器端(数据库管理系统)每台工作站安装SYBASE客户端启动SYBASE服务(服务器中的控制面板→管理工具→服务:SQLSEVER服务;备份服务)工作站与服务器的连接配置(DSEDIT)连接测试(pingserver)三、Sybase安装服务器上安装SYBASE服务器端(数据sybase-系统管理员培训四、工作站与服务器的连接配置基础:网络连通配置工具:dsedit工具配置内容:连接名连接协议(SYBASE协议):

NLWNSCK;NLMSNMP

地址(服务器的地址)NLWNSCK:服务器机器名,5000NLMSNMP:\\机器名\pipe\sybase\query四、工作站与服务器的连接配置基础:网络连通常见问题分析客户端无法连接服务器1。物理连接是否ping通2。防火墙是否把5000的端口号屏蔽了3。修改配置4。登陆一下客户端的机器常见问题分析客户端无法连接服务器六、设备与数据库Sybase中的几个概念◆数据库设备所有的数据库都创建在数据库设备上。所谓数据库设备,不是指一个可识别的物理设备,而是指用于存储数据库和数据库对象的磁盘原始分区或操作系统文件。增加一个新的数据库设备时,必须对这些设备“初始化”。初始化的过程就是将物理磁盘、磁盘分区或操作系统文件变为SYBASE数据库可以识别的设备

◆系统数据库

安装Sybase数据库时会自动生成的系统数据库

◆用户数据库

:用户自己创建的数据库存储实际数据◆数据库对象六、设备与数据库Sybase中的几个概念◆数据库设备六、设备与数据库-设备管理创建设备:语法:diskinitname=设备名,

physname=物理文件名,

vdevno=设备号,需要查询

size=设备大小2k为单位可以在任何一台工作站上执行创建设备物理文件存放于服务器上,路径必须事先存在,文件不能事先存在,指定的驱动器上,必须有足够的空间。六、设备与数据库-设备管理创建设备:每一个设备有唯一的设备号(0~)参数“numberofdevices”决定了系统中最多可以存在多少个设备查找可用的设备号:sp_configure“numberofdevice”查看系统中最多可以有多少设备(有效设备号,有效不等于可用。)sp_helpdevice查看系统中已经存在的设备信息(包括已经占用的设备号)六、设备与数据库-设备管理每一个设备有唯一的设备号(0~)六、设备与数据库-设备管理设备大小单位为2K设备大小=物理文件的大小设备与文件一一对应查看设备信息:sp_helpdevice设备名删除设备sp_dropdevice设备名设备一旦创建,其大小就不能再改变,要删除设备必须先删除设备上的数据库六、设备与数据库-设备管理设备大小单位为2K六、设备与数据库-设备管理创建设备,删除设备也可以通过sybasecentral来操作,sybasecentral是图形化界面,操作起来比较简单。六、设备与数据库-设备管理创建设备,删除设备也可以通过sybasecentral常见问题分析无法正常创建第三套帐删除多余的设备,或者修改账套编号常见问题分析无法正常创建第三套帐六、设备与数据库-Sybase数据库分类:系统数据库:master,tempdb,model,sybsystemprocs用户数据库:cwbase1,…,cwbaseN六、设备与数据库-Sybase数据库分类:系统数据库:masMaster是管理和控制用户数据库以及维护服务器正常运行的核心数据库,它保存了大量的系统信息,如服务器配置、用户、设备等。注意:在master数据库中不允许普通用户在其中创建数据库对象,否则会使得master数据库的事务日志很快变满。如果事务日志用尽,就无法使用dump

transaction命令释放master数据库中的空间

六、设备与数据库-Sybase数据库分类:Master库Master是管理和控制用户数据库以及维护服务器正常运行的核六、设备与数据库-Sybase数据库分类:Tempdb是个临时数据库,为临时表和其他临时工作空间提供一个存储区域。Tempdb的空间为服务器中所有数据库的所有用户所共享

Tempdb的缺省大小是2M,由于企业管理软件中用到的临时表比较多,所以一般需要扩充,在我们的软件,第一次建帐就扩到了100MTempdb库六、设备与数据库-Sybase数据库分类:Tempdb是个临六、设备与数据库-Sybase数据库分类:创建用户数据库而提供的模板,创建用户数据库时,自动拷贝一个Model数据库,并且根据给定参数,扩展该用户库的尺寸model库六、设备与数据库-Sybase数据库分类:创建用户数据库而提六、设备与数据库-Sybase数据库分类:专门用来保存系统命令(存储过程)的数据库,如sp_help、sp_configure、sp_helpdevice等

sybsystemprocs库六、设备与数据库-Sybase数据库分类:专门用来保存系统命六、设备与数据库-创建数据库数据库用于存放数据与日志创建数据库语法:createdatabase数据库名on设备名1=大小logon设备名2=大小[withoverride][forload]数据与日志存放于同一设备时,要用withoverride参数为改善性能,避免数据与日志争夺空间,数据与日志应放在不同的设备上。六、设备与数据库-创建数据库数据库用于存放数据与日志六、设备与数据库-数据库管理查看数据库信息sp_helpdb数据库名Sp_renamedb用来重命名数据库名字例如:sp_dboptionmm,single,trueusemmcheckpointsp_renamedbmm,nnusemastersp_dboptionnn,single,falseusenncheckpoint删除数据库dropdatabase数据库名扩充数据库大小alterdatabase数据库名on设备名=大小logon设备名=大小六、设备与数据库-数据库管理查看数据库信息删除数据库数据库大小只能扩大,不能缩小彻底删除一个数据库,并释放其所占用的空间:先删数据库,再删除设备,最后删除设备所对应的物理文件,释放空间。SQLSERVER启动时,物理文件受保护,无法删除;服务停止,物理文件可以删除,文件删除,数据库中所有数据丢失六、设备与数据库-数据库管理数据库大小只能扩大,不能缩小六、设备与数据库-数据库管理创建、删除、扩充数据库操作均可以在sybasecentral工具中进行六、设备与数据库-数据库管理创建、删除、扩充数据库操作均可以在sybasecentra常见问题分析数据库质疑或者recovery/*使系统数据表可改*/

sp_configure

'allow

update',1

/*使数据库在启动时不做检查*/

update

sysdatabases

set

status=-32768

where

name='databasename'

/*清理日志*/

dump

tran

master

with

no_log

dump

tran

databasename

with

no_log

然后重启数据库,就可解决问题。但还必须做一步:

sp_configure

'allow

update',0常见问题分析数据库质疑或者recovery七、数据库安全管理Sybase通过对用户的管理,控制用户对数据的安全访问,来实现其安全管理机制系统管理员sa在系统创建时自动创建,空令默认为空。管理层次:Sybase帐户数据库用户Sp_addloginsaSp_adduser操作数据库中数据七、数据库安全管理Sybase通过对用户的管理,控制用户对数Sybase系统Cwbase1cwbase2wyxSybase帐户wxxyxCwbase1库的用户wxx七、数据库安全管理Sybase系统Cwbase1cwbase2wyxSybas七、数据库安全管理-帐户与用户的操作•增加SYBASE帐户

sp_addloginloginame,passwd[,defdb]例:sp_addloginwang,aaaaaa,cwbase1•创建组

sp_addgroupgrpname例:sp_addgroupzu1•增加用户,将SYBASE帐户加入到数据库中use数据库名sp_adduserloginame[,name_in_db[,grpname]]例:sp_adduserwang,wan,zu1•用户改变所属组:

sp_changegroupnewgrpname,username•改变帐户口令sa改变自己口令:sp_passwordoldpasswd,newpasswdsa改变其他帐户口令:sp_passwordsa_password(null),newpasswd,loginame

七、数据库安全管理-帐户与用户的操作•增加SYBASE帐户•删除SYBASE帐户语法:sp_droploginloginame例:sp_droploginwang•删除组语法:sp_dropgroupgrpname例:sp_dropgroupzu1•删除用户:语法:sp_dropuserusername例:sp_dropuserwan七、数据库安全管理-帐户与用户的操作•删除SYBASE帐户七、数据库安全管理-帐户与用户的操作分配权限1、命令权力授权:grant权力清单to用户名回收权力:revoke权力清单from用户名2、对象操作权授权:grant操作权on对象名to用户名回收权力:revoke操作权on对象名from用户名七、数据库安全管理-帐户与用户的操作分配权限七、数据库安全管理-帐户与用户的操作常见问题分析增加用户的时候提示:loginfailed修改ad00?9999的口令sp_passwordsa的口令,新口令,’ad00?9999’举例:

sp_passwordnull,aaaaaa,ad0029999常见问题分析增加用户的时候提示:loginfailed软件常见问题1。恢复数据后提示无法取得系统id或者进入维护工具提示找不到lsxtmc等出现这种情况一般是id号不一致造成的。解决方案:首先以sa连接数据执行下面的语句Select*fromsysloginswherename=‘lc00?9999’(其中?表示账套编号)查看一下sid是多少然后连接出问题的数据库,执行下面的语句Select*fromsysuserswherenamelike‘lc%’查看该条记录的sid通常和前面的纪录是不一致的,修改成一致的即可软件常见问题1。恢复数据后提示无法取得系统id或者进入维护工软件常见问题2。年结的时候提示找不到****表(实际上数据没有问题),或者维护工具备份速度很快,备份不出数据。这时候通常也是sysusers出现了问题Select*fromsysuserswherenamelike‘lc%’查询会出现一条记录,其中name应该=lc00?9999(?表示账套编号)如果查询结果和账套编号不一致就会出现上述问题,修改成一致的即可软件常见问题2。年结的时候提示找不到****表(实际上数据没八、系统参数设置与性能调优SYBASE运行参数配置用sp_configure配置SYBASE运行过程中的参数语法:sp_configure参数名查看参数配置值sp_configure参数名,参数配置值修改参数配置值,需要重启动sqlserver服务使配置起作用(configvalue→runvalue)八、系统参数设置与性能调优SYBASE运行参数配置八、系统参数设置与性能调优Totalmemory:物理内存*35%*512numberofdevices:10+帐套数*2<256numberofopendatabases:4+帐套数numberofuserconnections:根据站点数及所用模块numberofopenobjects:按照默认值可在帐套管理中修改。sybase参数存放于“服务名.cfg”中八、系统参数设置与性能调优Totalmemory:物理九、数据库对象概述数据库中的表、视图、缺省、规则、触发器、索引、存储过程、用户自定义数据类型统称为数据库对象。可以由该数据库中有权限的数据库用户、数据库属主或系统管理员(sa)来创建数据库对象。创建者成为该数据库对象的属主(拥有者)。数据库对象名区分大小写SYBASE中大小写敏感九、数据库对象概述数据库中的表、视图、缺省、规则、触发器、索九、数据库对象概述数据库对象的引用格式:数据库名.对象属主名.对象名在当前数据库中操作本数据库的对象,可以省略数据库名。操作当前连接用户所拥有的数据库对象时可以省略对象属主名。在当前数据库中操作当前用户所拥有的数据库对象,数据库名、属主名均可省略九、数据库对象概述数据库对象的引用格式:九、数据库对象概述-表表表结构数据列每列属性每列数据类型九、数据库对象概述-表表表结构数据列每列属性每列数据类型常用数据类型字符型:char(n),varchar(n)数值型:numeric(p,s),int,float日期时间型:datetime列属性:

Nullnotnull

九、数据库对象概述-表常用数据类型九、数据库对象概述-表创建表结构createtable表名(列名1列数据类型列属性,列名2列数据类型列属性,…...)同一表中列名必须唯一不同表中列名可以相同九、数据库对象概述-表创建表结构九、数据库对象概述-表修改表结构-增加列:Altertabletable_nameadd列名列数据类型null如:altertableaaaddnamechar(5)null修改表结构-删除列:Altertabletable_namedrop列1,列2,…如:altertableaadropname九、数据库对象概述-表修改表结构-增加列:九、数据库对象概述-表常见问题分析在软件的操作过程中提示****无效,或者invalidcolumn***出现这种提示一般是数据库缺少提示的相应的字段,增加上即可。根据提示我们可以知道缺少的字段,但是缺少字段的类型我们如何确定呢?一般我们可以通过建表sql来搜索。或者通过升级sql来搜索确定了相应的数据类型后可以以lc00?9999(?表示账套编号)登陆数据库执行下面的语句Altertable表名add字段名数据类型null这样问题就顺利解决了常见问题分析在软件的操作过程中提示****无效,或者inva修改表名字:

sp_rename表名,新表名如:sp_renameaa,bbSp_rename还可以用来修改索引、视图等数据库对象的名字九、数据库对象概述-表修改表名字:九、数据库对象概述-表系统表名

SysconfiguresSyscurconfigsSysdatabasesSysdevicesSyslocksSysloginsSysmessagesSysprocesses只有在master数据库中才能有的系统表一行记录了用户可设置的配置参数有关SQLServer当前正使用的配置参数情况一行记录了SQLServer中的一个数据库一行记录了数据库的每一磁带转储设备,磁盘转储设备,数据库设备和磁盘分区设备和磁盘分区有关动态锁的情况一行记录了每一有效的SQLServer的用户帐号一行记录了每一系统错误或警告有关Server进程的情况表中的内容九、数据库对象概述-表系统表名只有在master数据库中才能有的系统表一行记查看表结构sp_help表名sp_help查看当前库中所有表删除表(表结构删除、表中数据丢失)droptable表名修改表结构增加新列,且新列的属性为允许为空。删除列九、数据库对象概述-表查看表结构九、数据库对象概述-表表中数据的操作selectInsertupdatedelete表中数据的操作只能在isql/sqladvantage工具中写语句来完成,不能用sybasecentral工具九、数据库对象概述-表表中数据的操作九、数据库对象概述-表Select从表中查询数据★select*from表名★select列1,列2…from表名★select列1,列2…from表where条件九、数据库对象概述-表Select从表中查询数据九、数据库对象概述-表条件表达式的书写:大小比较:<,>,>=,<=,!=,=范围确定:between...and…列表:in模糊匹配:like通配符:%:通配任意个数任意字符_

:通配一个数任意字符[]:范围内的一个任意字符多重条件:and,or,not九、数据库对象概述-表条件表达式的书写:九、数据库对象概述-表Select从表中查询数据查询结果排序:orderby列1asc/desc,列2★修改查询结果的显示标题★查询结果列间的计算“+”:数值型相加;字符型连接★常用函数的使用count(),sum(),max(),min(),avg(),substring():修改编码结构查询分组:groupby分组列★insert与select连用九、数据库对象概述-表Select从表中查询数据九、数据库对象概述-表Select从表中查询数据

其基本句法为:

Selectselect_listfromtable_listwheresearch_conditions

九、数据库对象概述-表Select从表中查询数据九、数据库对象概述-表1、简单查询

A、选择若干列

Selectexpression[,expression]...Fromtable_list

B、选择若干行

Select*fromtable_listwheresearch_conditions

注意:查询中消除值重复的行

Selectdistinctexpressionfromtable_list

九、数据库对象概述-表1、简单查询

A、选择若干列

Selectexpres2、连接查询

A、等值连接和不等值连接:通过‘=’来比较两个表之间的数据时,称为等值连接;而通过其他比较符时,称为不等值连接

等值连接:

Select*frompublishers,authorswherepublishers.city=authors.city

不等值连接:略

B、自然连接:在连接的目标列中相同名的列只保留一个

Selectpublishers.pub_idpublishers.pub_name,publishers.state,authors.*

Frompublishers,authorswherepublishers.city=authors.city

九、数据库对象概述-表2、连接查询

A、等值连接和不等值连接:通过‘=’来比较两3、子查询

A、表达式子查询

Selectau_lname,au_fnamefromauthorswherecity=

(selectcityfrompublisherswherepub_name="abcde")

可以使用一切大小比较操作符;在操作符和子查询之间可以使用All或any。

B、限定谓词子查询

Selectpub_namefrompublishers

Wherepub_idin

(selectpub_idfromtitleswheretype='abcde')

C、相关查询

相关查询即嵌套查询依赖于外部父查询的值,嵌套查询要重复执行若干次。

Selectdistinctt1.typefromtitlest1

Wheret1.typein(selectt2.typefromtitlest2wheret1.pub_id!=t2.pub_id)九、数据库对象概述-表3、子查询

A、表达式子查询

Selectau_lna4、集函数、分组与排序

A、对查询结果进行聚集处理

聚集函数:Sum([all|distinct]expression),avg([all|distinct]exoression),

Count([all|distinct]expression),count(*),max(expression),min(expression)

Selectcount(*)fromtitles

B、用Groupby和having子句对查询结果分组

Selecttype,avg(advance),sum(total_sales)fromtitlesgroupbytype

Selecttypefromtitlesgroupbytypehavingcount(*)>1

Having类似于where,但where不能用聚集函数。

九、数据库对象概述-表4、集函数、分组与排序

九、数据库对象概述-表C、用Orderby对查询结果进行排序

Selecttype,avg(price)fromtitlesgroupbytypeorderbyavg(price)

D、Compute子句

完成基于每一组中的值的聚集运算,聚集值作为一个新行出现在查询结果中。

Selecttype,priceadvancefromtitlesorderbytypecomputesum(price),sum(advance)bytype九、数据库对象概述-表C、用Orderby对查询结果进行排序

Selecinsert向表中增加数据语法:insert表名(列1,列2...)

values(值1,值2...)一次向表中插入一行数据插入的数据要与列的数据类型匹配★insert表名values(值1,值2...)默认向表中所有的列插入数据,值的个数与表中列数要一致★向表中部分列插入数据,不出现的列其属性要允许为空Insert与select连用可以实现一次向表中插入多行数据九、数据库对象概述-表insert向表中增加数据九、数据库对象概述-表Update修改表中数据Update表名

set列1=值,列2=值,…where条件表达式用一列的值去修改同一表中另一列的值用一列的值去修改另一表中某列的值九、数据库对象概述-表Update修改表中数据九、数据库对象概述-表Delete删除表中的数据

Delete表名删除表中的所有数据,表结构还存在delete表名where条件表达式删除表中满足条件的数据九、数据库对象概述-表Delete删除表中的数据九、数据库对象概述-表常见问题分析查询提示无法找到查询格式,id=…..,gsbh=‘0001’这个时候是因为数据库中缺少相应的查询sql造成的,我们可以通过查询相应的建账sql,执行相应的sql即可另一种情况时没有任何提示,屏幕一闪而过,这个时候一般也是因为数据库没有相应的数据查询涉及表LszbgsLstigsLsotgs常见问题分析查询提示无法找到查询格式,id=…..,gsbh使用sybase的bin目录下的外部命令bcp转出:bcpcwbase1.lc0019999.ZWPZKoutd:\ZWPZK.TXT-Usa-P-Ssybase-c转入:bcpcwbase1.lc0019999.ZWPZKind:\ZWPZK.TXT-Usa-P-Ssybase-c注:命令行中的-U后面是用户名sa,-P后面是sa的口令,-S后面是服务器的名字.Bcp只能转出一个表中所有数据,不能转出表中部分数据。转入的数据是添加到表中原数据的后面,而不是以覆盖的方式转入。Bcp转出数据形成的文本文件是存放在本机上。九、数据库对象概述-表使用sybase的bin目录下的外部命令bcp九、数据库对象索引的作用:加快对表中数据的查询速度唯一索引可以保证表中数据的唯一性索引的缺点:占用空间减慢表中数据的修改及删除速度九、数据库对象概述-索引索引的作用:九、数据库对象概述-索引创建索引语法:create[unique][clustered/nonclustered]index索引名on表名(列1,列2...)unique:唯一索引,索引所基于的列不能有重复值。Clustered:聚簇索引,改变数据存放的物理顺序,一个表只能有一个。Nonclustered:非聚簇索引,不改变。九、数据库对象概述-索引创建索引九、数据库对象概述-索引数据库对象概述-索引出现以下情况可以为表创建索引经常用于检索、查询的列用于两表连接的列在表中建唯一索引可以增强数据的完整性出现以下情况建议不要建索引很少或不在查询中引用的列只有两三个值的列(例如性别)小表或者行数很小的表数据库对象概述-索引出现以下情况可以为表创建索引查看索引sp_help表名sp_helpindex表名删除索引dropindex表名.索引名九、数据库对象概述-索引查看索引九、数据库对象概述-索引视图是个虚表,不存储实际数据,它的数据来自其他表或者视图视图的作用方便查询提高行安全性提高列安全性语句:

createviewview_name[col_name,…]

asselectstatementDropviewview_name九、数据库对象概述-视图视图是个虚表,不存储实际数据,它的数据来自其他表或者视图九、触发器是一种特殊的存储过程,用来维护不同表中的相关数据的一致性。当在一张表中插入、删除和修改数据时,触发器就会触发另一个存储过程,从而保持数据的一致性。九、数据库对象概述-触发器触发器是一种特殊的存储过程,用来维护不同表中的相关数据的一致规则是可以理解为对数据库、某一列、某用户数据类型的限制。

Createrule规则名as

变量=表达式绑订:sp_bindrule规则名,‘表.列名’规则必须绑订,规则才能生效。解除绑订

sp_unbindrule‘表.列名’删除规则

droprule规则名九、数据库对象概述-规则规则是可以理解为对数据库、某一列、某用户数据类型的限制。九数据库对象概述-规则举例:创建一个值得规则Createrulerul_nameas@statein(‘ca’,’co’,’wa’)注意它带有一个@为前缀的参数将规则与表的列(A.F_1)捆绑Sp_bindrule“rul_name”,”A.F_1”注意加引号数据库对象概述-规则举例:缺省是在数据录入时,若用户没有输入数据,SQLServer自动输入的值。

Createdefault缺省名as表达式绑订:sp_binddefault缺省名,‘表.列名’解除缺省

sp_unbindefault‘表.列名’删除缺省

dropdefault缺省名九、数据库对象概述-缺省缺省是在数据录入时,若用户没有输入数据,SQLServer存储过程是用T-SQL语言编写成的SQL子例程,它存储于SQL服务器上供用户调用执行。与一般的SQL语句和批处理语句不同的是,存储过程是经过预编译的。当首次运行一个存储过程时,SQLServer的查询处理器将对其分析,并产生最终的执行方案。由于查询处理的大部分工作已经完成,所以以后执行存储过程时速度将会很快。执行存储过程时可带参数并可调用其他存储过程,执行完毕后返回信息以指示是否成功完成相应操作。存储过程有两种:一种是SQL服务器安装时自动建立的系统存储过程(系统过程),另一种是用户自己创建的存储过程。系统过程是用于系统管理,并且为用户提供了从事数据库管理的一种途径。这些系统过程都是以sp_开头的,它们都放在master数据库中且隶属于sa(系统管理员)。也有很多可以在任一个数据库中运行的系统过程。九、数据库对象概述-存储过程存储过程是用T-SQL语言编写成的SQL子例程,它存储于SQ建立存储过程

createproc过程名as

select_statement调用存储过程:

直接写过程名,如果不是批处理的第一条命令,则要加“exec”。九、数据库对象概述-存储过程建立存储过程

createproc过程名as

sel常见的系统过程有:

Sp_addgroup在当前数据库中建立一个数据库用户组

Sp_addlogin建立一个帐户Sp_adduser在当前数据库中增加一个用户

sp_changegroup改变数据库用户组

Sp_dboption查询或改变数据库系统设置

Sp_dropdevice删除设备

Sp_dropgroup删除组

Sp_droplogin删除帐号

Sp_help查询数据库对象信息

Sp_helpdb查询数据库信息

九、数据库对象概述-存储过程常见的系统过程有:

Sp_addgroup在当前数据库中Sp_helpdevice查询设备信息

Sp_helpgroup查询组信息

Sp_helpindex查询索引信息

Sp_helpuser查询用户信息

Sp_lock查询当前加锁信息

Sp_monitor查询SQL服务器统计信息

Sp_password改变登录帐号口令

Sp_spaceused查询表中的行数、数据页数及空间大小

Sp_who查询当前用户及过程信息

Sp_syntax查询操作语法

Sp_configure配置系统参数九、数据库对象概述-存储过程Sp_helpdevice查询设备信息

Sp_hel十、浪潮通软常用表及结构LSCONF:记录一套帐基本信息的表LSTABN:关于备份的表GSDBZTXX:关于帐套信息的表LSXTMC:关于应用模块的表LSKJQJ:所建会计期间的表LSPASS:创建用户的表LSGNZD:功能字典 LSUSGN:用户功能权限LSUSSJ:用户数据权限十、浪潮通软常用表及结构LSCONF:记录一套帐基本信息的表十一、备份与恢复备份方法:1、维护工具或各功能模块中备份功能备份后备份数据存放在本机上2、sybase系统提供的备份方法创建备份设备sp_addumpdevice‘disk’,转储设备名,物理文件名(备份文件)创建后,第一次使用该设备备份前,该物理文件不存在十一、备份与恢复备份方法:sybase系统提供的备份方法备份语法:dumpdatabase数据库名to备份设备名备份前要启动数据库备份服务备份后备份文件存放于服务器上备份时总是重写备份文件备份文件,可以任意拷贝备到设备:dumpdatabasecwbase1tocwbase1_dump备到文件:dumpdatabasecwbase1to'c:\data\cw1.dup'十一、备份与恢复sybase系统提供的备份方法十一、备份与恢复恢复语法:loaddatabase数据库名from备份设备名onlinedatabase数据库名(使数据库在线)重载的数据库其空间大小要大于等于原数据库大小。将一套帐的数据恢复到另一套帐中注意lc0019999的id号问题建议:不要用直接拷贝*.dat文件的方式进行备份十一、备份与恢复恢复十一、备份与恢复备份恢复数据工具备份恢复数据工具如何利用物理文件恢复数据1。新机器的名字和ip地址保持一样2。备份原来的sybase文件夹3。新装的sybase和以前的路径一样4。覆盖sybase文件夹5。直接可以使用sybase如何利用物理文件恢复数据1。新机器的名字和ip地址保持一样谢谢!!谢谢!!演讲完毕,谢谢观看!演讲完毕,谢谢观看!Sybase培训Sybase培训1、sybase简介2、sybase安装3、数据库客户端与服务端配置4、设备与数据库的管理5、数据库的安全管理6、系统参数设置与性能调优7、数据库对象管理(sql语句)8、浪潮通软常用表及结构9、数据库备份与恢复10、其他主要内容:主要内容:一、Sybase公司及其产品简介一、Sybase公司及其产品简介SYBASE主要的三种版本:◆UNIX操作系统下运行的版本

NovellNetware环境下运行的版本◆WindowsNT环境下运行的版本

一、Sybase公司及其产品简介SYBASE主要的三种版本:◆UNIX操作系统下运行的版本Sybase数据库的特点:

◆基于客户/服务器(c/s)体系结构的数据库其好处:1、支持共享资源且在多台设备间平衡负载2、允许容纳多个主机的环境,充分利用了企业已有的各种系统◆真正开放的数据库◆高性能的数据库体现在:1、可编程数据库2、事件驱动的触发器3、多线索化

一、Sybase公司及其产品简介Sybase数据库的特点:◆基于客户/服务器(c/s)体系Sybase数据库的组成:

◆进行数据库管理和维护的一个联机的关系数据库管理系统:SybaseSQLServer

它是整个Sybase产品的核心软件,起着数据管理、高速缓冲管理、事务管理的作用◆支持数据库应用系统的建立与开发的一组前端工具:SybaseSQLToolset

ISQL、DWB、APT◆把异构环境下其它厂商的应用软件和任何类型的数据连接在一起的接口:SybaseOpenClient/OpenServer

通过OpenClient的DB-LIB库,应用程序可以访问SQLServer。而通过OpenServer的SERVER-LIB,应用程序可以访问其它的数据库管理系统。

一、Sybase公司及其产品简介Sybase数据库的组成:◆进行数据库管理和维护的一个联机三、Sybase安装

服务器上安装SYBASE服务器端(数据库管理系统)每台工作站安装SYBASE客户端启动SYBASE服务(服务器中的控制面板→管理工具→服务:SQLSEVER服务;备份服务)工作站与服务器的连接配置(DSEDIT)连接测试(pingserver)三、Sybase安装服务器上安装SYBASE服务器端(数据sybase-系统管理员培训四、工作站与服务器的连接配置基础:网络连通配置工具:dsedit工具配置内容:连接名连接协议(SYBASE协议):

NLWNSCK;NLMSNMP

地址(服务器的地址)NLWNSCK:服务器机器名,5000NLMSNMP:\\机器名\pipe\sybase\query四、工作站与服务器的连接配置基础:网络连通常见问题分析客户端无法连接服务器1。物理连接是否ping通2。防火墙是否把5000的端口号屏蔽了3。修改配置4。登陆一下客户端的机器常见问题分析客户端无法连接服务器六、设备与数据库Sybase中的几个概念◆数据库设备所有的数据库都创建在数据库设备上。所谓数据库设备,不是指一个可识别的物理设备,而是指用于存储数据库和数据库对象的磁盘原始分区或操作系统文件。增加一个新的数据库设备时,必须对这些设备“初始化”。初始化的过程就是将物理磁盘、磁盘分区或操作系统文件变为SYBASE数据库可以识别的设备

◆系统数据库

安装Sybase数据库时会自动生成的系统数据库

◆用户数据库

:用户自己创建的数据库存储实际数据◆数据库对象六、设备与数据库Sybase中的几个概念◆数据库设备六、设备与数据库-设备管理创建设备:语法:diskinitname=设备名,

physname=物理文件名,

vdevno=设备号,需要查询

size=设备大小2k为单位可以在任何一台工作站上执行创建设备物理文件存放于服务器上,路径必须事先存在,文件不能事先存在,指定的驱动器上,必须有足够的空间。六、设备与数据库-设备管理创建设备:每一个设备有唯一的设备号(0~)参数“numberofdevices”决定了系统中最多可以存在多少个设备查找可用的设备号:sp_configure“numberofdevice”查看系统中最多可以有多少设备(有效设备号,有效不等于可用。)sp_helpdevice查看系统中已经存在的设备信息(包括已经占用的设备号)六、设备与数据库-设备管理每一个设备有唯一的设备号(0~)六、设备与数据库-设备管理设备大小单位为2K设备大小=物理文件的大小设备与文件一一对应查看设备信息:sp_helpdevice设备名删除设备sp_dropdevice设备名设备一旦创建,其大小就不能再改变,要删除设备必须先删除设备上的数据库六、设备与数据库-设备管理设备大小单位为2K六、设备与数据库-设备管理创建设备,删除设备也可以通过sybasecentral来操作,sybasecentral是图形化界面,操作起来比较简单。六、设备与数据库-设备管理创建设备,删除设备也可以通过sybasecentral常见问题分析无法正常创建第三套帐删除多余的设备,或者修改账套编号常见问题分析无法正常创建第三套帐六、设备与数据库-Sybase数据库分类:系统数据库:master,tempdb,model,sybsystemprocs用户数据库:cwbase1,…,cwbaseN六、设备与数据库-Sybase数据库分类:系统数据库:masMaster是管理和控制用户数据库以及维护服务器正常运行的核心数据库,它保存了大量的系统信息,如服务器配置、用户、设备等。注意:在master数据库中不允许普通用户在其中创建数据库对象,否则会使得master数据库的事务日志很快变满。如果事务日志用尽,就无法使用dump

transaction命令释放master数据库中的空间

六、设备与数据库-Sybase数据库分类:Master库Master是管理和控制用户数据库以及维护服务器正常运行的核六、设备与数据库-Sybase数据库分类:Tempdb是个临时数据库,为临时表和其他临时工作空间提供一个存储区域。Tempdb的空间为服务器中所有数据库的所有用户所共享

Tempdb的缺省大小是2M,由于企业管理软件中用到的临时表比较多,所以一般需要扩充,在我们的软件,第一次建帐就扩到了100MTempdb库六、设备与数据库-Sybase数据库分类:Tempdb是个临六、设备与数据库-Sybase数据库分类:创建用户数据库而提供的模板,创建用户数据库时,自动拷贝一个Model数据库,并且根据给定参数,扩展该用户库的尺寸model库六、设备与数据库-Sybase数据库分类:创建用户数据库而提六、设备与数据库-Sybase数据库分类:专门用来保存系统命令(存储过程)的数据库,如sp_help、sp_configure、sp_helpdevice等

sybsystemprocs库六、设备与数据库-Sybase数据库分类:专门用来保存系统命六、设备与数据库-创建数据库数据库用于存放数据与日志创建数据库语法:createdatabase数据库名on设备名1=大小logon设备名2=大小[withoverride][forload]数据与日志存放于同一设备时,要用withoverride参数为改善性能,避免数据与日志争夺空间,数据与日志应放在不同的设备上。六、设备与数据库-创建数据库数据库用于存放数据与日志六、设备与数据库-数据库管理查看数据库信息sp_helpdb数据库名Sp_renamedb用来重命名数据库名字例如:sp_dboptionmm,single,trueusemmcheckpointsp_renamedbmm,nnusemastersp_dboptionnn,single,falseusenncheckpoint删除数据库dropdatabase数据库名扩充数据库大小alterdatabase数据库名on设备名=大小logon设备名=大小六、设备与数据库-数据库管理查看数据库信息删除数据库数据库大小只能扩大,不能缩小彻底删除一个数据库,并释放其所占用的空间:先删数据库,再删除设备,最后删除设备所对应的物理文件,释放空间。SQLSERVER启动时,物理文件受保护,无法删除;服务停止,物理文件可以删除,文件删除,数据库中所有数据丢失六、设备与数据库-数据库管理数据库大小只能扩大,不能缩小六、设备与数据库-数据库管理创建、删除、扩充数据库操作均可以在sybasecentral工具中进行六、设备与数据库-数据库管理创建、删除、扩充数据库操作均可以在sybasecentra常见问题分析数据库质疑或者recovery/*使系统数据表可改*/

sp_configure

'allow

update',1

/*使数据库在启动时不做检查*/

update

sysdatabases

set

status=-32768

where

name='databasename'

/*清理日志*/

dump

tran

master

with

no_log

dump

tran

databasename

with

no_log

然后重启数据库,就可解决问题。但还必须做一步:

sp_configure

'allow

update',0常见问题分析数据库质疑或者recovery七、数据库安全管理Sybase通过对用户的管理,控制用户对数据的安全访问,来实现其安全管理机制系统管理员sa在系统创建时自动创建,空令默认为空。管理层次:Sybase帐户数据库用户Sp_addloginsaSp_adduser操作数据库中数据七、数据库安全管理Sybase通过对用户的管理,控制用户对数Sybase系统Cwbase1cwbase2wyxSybase帐户wxxyxCwbase1库的用户wxx七、数据库安全管理Sybase系统Cwbase1cwbase2wyxSybas七、数据库安全管理-帐户与用户的操作•增加SYBASE帐户

sp_addloginloginame,passwd[,defdb]例:sp_addloginwang,aaaaaa,cwbase1•创建组

sp_addgroupgrpname例:sp_addgroupzu1•增加用户,将SYBASE帐户加入到数据库中use数据库名sp_adduserloginame[,name_in_db[,grpname]]例:sp_adduserwang,wan,zu1•用户改变所属组:

sp_changegroupnewgrpname,username•改变帐户口令sa改变自己口令:sp_passwordoldpasswd,newpasswdsa改变其他帐户口令:sp_passwordsa_password(null),newpasswd,loginame

七、数据库安全管理-帐户与用户的操作•增加SYBASE帐户•删除SYBASE帐户语法:sp_droploginloginame例:sp_droploginwang•删除组语法:sp_dropgroupgrpname例:sp_dropgroupzu1•删除用户:语法:sp_dropuserusername例:sp_dropuserwan七、数据库安全管理-帐户与用户的操作•删除SYBASE帐户七、数据库安全管理-帐户与用户的操作分配权限1、命令权力授权:grant权力清单to用户名回收权力:revoke权力清单from用户名2、对象操作权授权:grant操作权on对象名to用户名回收权力:revoke操作权on对象名from用户名七、数据库安全管理-帐户与用户的操作分配权限七、数据库安全管理-帐户与用户的操作常见问题分析增加用户的时候提示:loginfailed修改ad00?9999的口令sp_passwordsa的口令,新口令,’ad00?9999’举例:

sp_passwordnull,aaaaaa,ad0029999常见问题分析增加用户的时候提示:loginfailed软件常见问题1。恢复数据后提示无法取得系统id或者进入维护工具提示找不到lsxtmc等出现这种情况一般是id号不一致造成的。解决方案:首先以sa连接数据执行下面的语句Select*fromsysloginswherename=‘lc00?9999’(其中?表示账套编号)查看一下sid是多少然后连接出问题的数据库,执行下面的语句Select*fromsysuserswherenamelike‘lc%’查看该条记录的sid通常和前面的纪录是不一致的,修改成一致的即可软件常见问题1。恢复数据后提示无法取得系统id或者进入维护工软件常见问题2。年结的时候提示找不到****表(实际上数据没有问题),或者维护工具备份速度很快,备份不出数据。这时候通常也是sysusers出现了问题Select*fromsysuserswherenamelike‘lc%’查询会出现一条记录,其中name应该=lc00?9999(?表示账套编号)如果查询结果和账套编号不一致就会出现上述问题,修改成一致的即可软件常见问题2。年结的时候提示找不到****表(实际上数据没八、系统参数设置与性能调优SYBASE运行参数配置用sp_configure配置SYBASE运行过程中的参数语法:sp_configure参数名查看参数配置值sp_configure参数名,参数配置值修改参数配置值,需要重启动sqlserver服务使配置起作用(configvalue→runvalue)八、系统参数设置与性能调优SYBASE运行参数配置八、系统参数设置与性能调优Totalmemory:物理内存*35%*512numberofdevices:10+帐套数*2<256numberofopendatabases:4+帐套数numberofuserconnections:根据站点数及所用模块numberofopenobjects:按照默认值可在帐套管理中修改。sybase参数存放于“服务名.cfg”中八、系统参数设置与性能调优Totalmemory:物理九、数据库对象概述数据库中的表、视图、缺省、规则、触发器、索引、存储过程、用户自定义数据类型统称为数据库对象。可以由该数据库中有权限的数据库用户、数据库属主或系统管理员(sa)来创建数据库对象。创建者成为该数据库对象的属主(拥有者)。数据库对象名区分大小写SYBASE中大小写敏感九、数据库对象概述数据库中的表、视图、缺省、规则、触发器、索九、数据库对象概述数据库对象的引用格式:数据库名.对象属主名.对象名在当前数据库中操作本数据库的对象,可以省略数据库名。操作当前连接用户所拥有的数据库对象时可以省略对象属主名。在当前数据库中操作当前用户所拥有的数据库对象,数据库名、属主名均可省略九、数据库对象概述数据库对象的引用格式:九、数据库对象概述-表表表结构数据列每列属性每列数据类型九、数据库对象概述-表表表结构数据列每列属性每列数据类型常用数据类型字符型:char(n),varchar(n)数值型:numeric(p,s),int,float日期时间型:datetime列属性:

Nullnotnull

九、数据库对象概述-表常用数据类型九、数据库对象概述-表创建表结构createtable表名(列名1列数据类型列属性,列名2列数据类型列属性,…...)同一表中列名必须唯一不同表中列名可以相同九、数据库对象概述-表创建表结构九、数据库对象概述-表修改表结构-增加列:Altertabletable_nameadd列名列数据类型null如:altertableaaaddnamechar(5)null修改表结构-删除列:Altertabletable_namedrop列1,列2,…如:altertableaadropname九、数据库对象概述-表修改表结构-增加列:九、数据库对象概述-表常见问题分析在软件的操作过程中提示****无效,或者invalidcolumn***出现这种提示一般是数据库缺少提示的相应的字段,增加上即可。根据提示我们可以知道缺少的字段,但是缺少字段的类型我们如何确定呢?一般我们可以通过建表sql来搜索。或者通过升级sql来搜索确定了相应的数据类型后可以以lc00?9999(?表示账套编号)登陆数据库执行下面的语句Altertable表名add字段名数据类型null这样问题就顺利解决了常见问题分析在软件的操作过程中提示****无效,或者inva修改表名字:

sp_rename表名,新表名如:sp_renameaa,bbSp_rename还可以用来修改索引、视图等数据库对象的名字九、数据库对象概述-表修改表名字:九、数据库对象概述-表系统表名

SysconfiguresSyscurconfigsSysdatabasesSysdevicesSyslocksSysloginsSysmessagesSysprocesses只有在master数据库中才能有的系统表一行记录了用户可设置的配置参数有关SQLServer当前正使用的配置参数情况一行记录了SQLServer中的一个数据库一行记录了数据库的每一磁带转储设备,磁盘转储设备,数据库设备和磁盘分区设备和磁盘分区有关动态锁的情况一行记录了每一有效的SQLServer的用户帐号一行记录了每一系统错误或警告有关Server进程的情况表中的内容九、数据库对象概述-表系统表名只有在master数据库中才能有的系统表一行记查看表结构sp_help表名sp_help查看当前库中所有表删除表(表结构删除、表中数据丢失)droptable表名修改表结构增加新列,且新列的属性为允许为空。删除列九、数据库对象概述-表查看表结构九、数据库对象概述-表表中数据的操作selectInsertupdatedelete表中数据的操作只能在isql/sqladvantage工具中写语句来完成,不能用sybasecentral工具九、数据库对象概述-表表中数据的操作九、数据库对象概述-表Select从表中查询数据★select*from表名★select列1,列2…from表名★select列1,列2…from表where条件九、数据库对象概述-表Select从表中查询数据九、数据库对象概述-表条件表达式的书写:大小比较:<,>,>=,<=,!=,=范围确定:between...and…列表:in模糊匹配:like通配符:%:通配任意个数任意字符_

:通配一个数任意字符[]:范围内的一个任意字符多重条件:and,or,not九、数据库对象概述-表条件表达式的书写:九、数据库对象概述-表Select从表中查询数据查询结果排序:orderby列1asc/desc,列2★修改查询结果的显示标题★查询结果列间的计算“+”:数值型相加;字符型连接★常用函数的使用count(),sum(),max(),min(),avg(),substring():修改编码结构查询分组:groupby分组列★insert与select连用九、数据库对象概述-表Select从表中查询数据九、数据库对象概述-表Select从表中查询数据

其基本句法为:

Selectselect_listfromtable_listwheresearch_conditions

九、数据库对象概述-表Select从表中查询数据九、数据库对象概述-表1、简单查询

A、选择若干列

Selectexpression[,expression]...Fromtable_list

B、选择若干行

Select*fromtable_listwheresearch_conditions

注意:查询中消除值重复的行

Selectdistinctexpressionfromtable_list

九、数据库对象概述-表1、简单查询

A、选择若干列

Selectexpres2、连接查询

A、等值连接和不等值连接:通过‘=’来比较两个表之间的数据时,称为等值连接;而通过其他比较符时,称为不等值连接

等值连接:

Select*frompublishers,authorswherepublishers.city=authors.city

不等值连接:略

B、自然连接:在连接的目标列中相同名的列只保留一个

Selectpublishers.pub_idpublishers.pub_name,publishers.state,authors.*

Frompublishers,authorswherepublishers.city=authors.city

九、数据库对象概述-表2、连接查询

A、等值连接和不等值连接:通过‘=’来比较两3、子查询

A、表达式子查询

Selectau_lname,au_fnamefromauthorswherecity=

(selectcityfrompublisherswherepub_name=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论