sybase日常操作和维护

上传人:z**** 文档编号:53128527 上传时间:2022-02-10 格式:DOC 页数:29 大小:163.50KB
收藏 版权申诉 举报 下载
sybase日常操作和维护_第1页
第1页 / 共29页
sybase日常操作和维护_第2页
第2页 / 共29页
sybase日常操作和维护_第3页
第3页 / 共29页
资源描述:

《sybase日常操作和维护》由会员分享,可在线阅读,更多相关《sybase日常操作和维护(29页珍藏版)》请在装配图网上搜索。

1、中国现代化支付系统SYBASE日常操作和维护深圳金融电子结算中心二OO二年五月目 录1. SQL SERVE基本框架2.1.1. 系统数据库2.1.2. INTERFACE文件3.1.3. SYBASE.CFG 3.1.4. 数据库设备4.1.5. 常见问题及解决方法5.2. 数据库启动/关闭6.2.1. 查看数据库状态 6.2.2. 数据库启动.6.2.3. 数据库关闭6.2.4. 出错日志7.2.5. 常见问题及解决方法 7.3. 用户数据库管理113.1. 数据库选项113.2. 查看数据库信息 1.33.3. 常见问题及解决方法 154. 用户管理164.1. 增加/删除用户1.64.

2、2. 查看用户信息1.74.3. 常见问题及解决方法 175. 数据库备份/恢复1.95.1. 数据库备份1952恢复数据库206. 如何调整SQL SERVE基本配置参数 226.1. 配置SQLSERVE参数的方法 226.2. 常见问题及解决方法23精品文档1. sql server 基本框架sql server由系统数据库、用户数据库、数据库设备和一些辅助文件组成1.1. 系统数据库sql server是个多数据库结构的数据库管理系统。分为系统数据库和用户数据库。系统数据库是在安装时自动创建的。(1) master数据库master数据库全面控制和管理用户数据库及 sql server

3、上的一切操作。Master数据库主要包含以下纪录:用户账号。正在处理的进程。环境变量的配置。系统出错信息。每个数据库的存储分配。活动锁。联机的sqlserver 引擎。(2) temp数据库它为临时表和其他临时工作空间提供一个存储区域。是公用的。1、当对大表进行order by 或group by操作时2、当建立过多的临时表时。(3) model数据库它为新建的用户数据库提供一个原型。(4) sybsystemproc 数据库存储系统存储过程。其他系统数据库:审计数据库(sybsecurity )、样本数据库(pubs2)、句法数据库(sybsyntax )查看当前数据库服务器中的用户数据库和

4、系统数据库的信息的命令如下:$isql-Usa -P1 sp_helpdb2 go要查看某一个数据库的信息,用下面命令$isql-Usa -P1 sp_helpdb dbname2 go1.2. i nterfaces 文件in terfaces 位于 $sybase 目录下,接口文件就象一个地址本,其中列出每个已知的服务器的名称及网络地址和端口 号。结构如下:server_ nameservice_type protocol n etwork mach ine protservice_type 该登记项的服务类型query供客户去找sql server 的端口master供sql serve

5、r确定用来监听客户连接请求的端口。Sort 网络端口号(1025-65535)例:SybaseQuery tcp 168.33.56.171 5000Master tcp 168.33.56.171 5000In terfaces 文件的作用:1、 在客户端的in terfaces 文件中列出可被连接的各个server的网络地址。2、在 server 端,每个 server 用于同其它 server 的连接。用户可以更改此文件,来改变数据库服务器的地址。1.3. SYBASE.cfgSYBASE.cfg文件存在于$sybase目录下,用于存放sqlserver的系统参数信息。数据库在启动时,读

6、取该文件。用户可以通过直接修改该文件中的参数的值, 来改变数据库的系统 参数,必须注意,修改了此文件中的参数以后,只有数据库重新启动以后才生效。1.4. 数据库设备数据库设备是指逻辑磁盘上的一组连续磁盘空间。用来存放数据库的数据和日志数据。存放数据库和事务日志。数据库设备最好建在原始分区上,也可以创建在文件系统上。只有系统管理员有权建立数据库设备查看数据库设备的命令如下:$isql -Usa -P1 sp_helpdevice2 godevice_ namephysical_ namehisdatadb /home/sybase/mbfe/hisdatadb hisdblog/home/syb

7、ase/mbfe/hisdblog his in dexdb /home/sybase/mbfe/his in dexdb master d_mastersysprocsdev /home/sybase/systemprocs systemdbdeVhome/sybase/systemdb tempdb /home/sybase/tempdb wkdatadb /home/sybase/mbfe/wkdatadb wkdblog /home/sybase/mbfe/wkdblog wkindexdb /home/sybase/mbfe/wkindexdb 要查看某一个数据库设备信息用下面命令:

8、 $isql -Usa -P1 sp_helpdevice device_ namedescripti onspecial, physical disk, 1000.00 MBspecial, physical disk, 400.00 MBspecial, physical disk, 200.00 MBspecial, default disk, physical disk, 70.00 MBspecial, physical disk, 100.00 MBspecial, physical disk, 5.00 MBspecial, physical disk, 20.00 MBspec

9、ial, physical disk, 200.00 MBspecial, physical disk, 100.00 MBspecial, physical disk, 100.00 MB2 go每天在业务开始之前,如果数据库是关闭的,1、以SYBASE用户登陆操作系统。要启动数据库。数据库的启动过程如下:2、进入in stall目录。(1) 如果是unixware操作系统,执行$cd $SYBASE/i nstall(2) 如果是aix操作系统,执行$cd $SYBASE/ASE-12_0/i nstall3、启动数据库服务器,执行下面命令$ startserver4、如果是启动备份服务库

10、,执行下面命令$startserver -RUN_SYB_BACKUP1.5. 常见问题及解决方法修改主机的IP地址后,如何根该in terfaces文件?安装SYBASE Adapive Server的机器IP地址改变后,应修改in terfaces文件及有关的设置。如果in terfaces文件中使用的是机器名而不是IP地址,则不需要变动。但如果客户端联接服务器使用的是服务器的IP地址而不是机器名,那么客户端需修改联接服务 器的IP地址.。如果in terfaces 文件中使用的是IP地址,那么需要修改in terfaces 文件中和 地址有关的部分,可使用dscp或dsedit进行修改。

11、 如果客户端联结服务器使用的是 服务器的地址而不是机器名,那么客户端也需修改。2. 数据库启动/关闭2.1. 查看数据库状态以Sybase用户登录到操作系统,用命令 showserver查看数据库是否启动。$showserverUSER PID %CPU %MEM SZ RSS TTY STAT STIME TIME COMMAND sybase 24000 0.12.0 13924 10856- A Jun 13 4:46 /sybase/ASE-12_0/bi n/dataserver -d/sybase/data/master.dat -e/sybase/ASE-12_0/i nstal

12、l/SYBASE.Iog-M/sybase SYBASE输入showserver命令后如果出现上面信息,证明数据库已经启动。2.2. 数据库启动以下是数据库启动的步骤:1sybase用户登录操作系统如果是unixware操作系统2$SYBASE/install 目录如果是aix操作系统2$S YBASE/ASE-12_0启动数据库服务器:3startserver启动备份服务器:4 startserver - RUN_SYB_BACKUP注意:一般情况,备份服务器是不用启动的,只有需要备份的时候才启动备份服务器2.3. 数据库关闭在一般情况下,数据库并不是每天都关闭,最好每天都不关闭,在特殊情况

13、下才关 闭。数据库关闭过程如下:1、以SYBASE用户登陆操作系统。2、 以数据库管理员(超级用户 SA)登陆数据库。$ isql -Usa -P3、关闭备份服务器1shutdown SYB_BACKUP2go4、关闭数据库服务器1 shutdown2 go2.4. 出错日志也许在数据库启动时,由于各种原因,数据库不能正常启动,数据库会把引起数据库错误的信息方到SYBASE.log文件中,这个文件在$SYBASE/install目录下。2.5. 常见问题及解决方法在实际环境中,数据库 Server无法启动的原因很多,本文仅列出了几种常见的情况,供 您参考。首先,应检查Server的日志文件。不

14、同版本缺省的日志文件如下(其中 server_nameSybase Server!的名称:UNIX:11.0*: $SYBASE/i nstall/errorlog11.5* 或 11.9*: $SYBASE/install/.log12.0*: $SYBASE_ASE/i nstall/.logNT:11.0* 11.5* 或 11.9*: $SYBASEinstallerrorlog12.0*: $SYBASEASE-12_0i nstallerrorlog? CASE 1:basis_dlock: file /sybase/master.dat already in use by a S

15、QL Serverkernel kdc on fig: un able to read primary master devicekernel kicon fig: read of config block failed检查 server 是否已经启动(showserver, ps -u sybase 或 NT service )? CASE 2:dope n: ope n /sybase/master.dat failed, permissi on deniedkernel kdc on fig: un able to read primary master devicekernel kic

16、 on fig: read of config block failed检查master设备文件的所有者及权限? CASE 3:ninit: All master network listeners have failed. Shutting down检查 network ip 及 port 配置 (netstat -a )? CASE 4:kern el:kscs in it: conn ectivity library error. Operatio n: cs_ctx_alloc().o检查操作系统参数是否已经修改并重新启动操作系统(参见安装手册)若操作系统异常宕机,ASE未启动而$SY

17、BASE/.krg已经存在,删除该文件 ? CASE5现象:Error 926Severity Level 14Error Message TextDatabase xx cannot be opened - it has been marked SUSPECT by recoverExpla nati on解决方法:(1)当你使用Transact_SQL命令操作这个数据库的数据时,出现这个信息,这是一个严重的错误,如果你要使用这个数据库的数据,必须改正这个错误.(2)启动 Backup Server,后备 master数据库1dump database master to /usr/syba

18、se/master.dup2go(3) 用isql登录到SQL Server,须用sa帐号(本文以pubs2数据库为例)1sp_c on figure allow updates, 12go1beg in tran2go1use master2go1update sysdatabases2set status = -327683Where name=pubs24go如果得到(1 row affected),则1commit2go否则1rollback2go(4) 重新启动 SQL Server.注:SQL Server重新启动之后,当发现数据库本身存在不可恢复的问题时, 如数据页损坏 等,且没

19、有完好的数据库备份,一定要用bcp.out备份用户数据库数据。此时,以下步骤 省略,并按照 如何删除坏的用户数据库”文章删除此数据库。之后重建此数据库,恢复备 份。dbcc dbrepair ( database_name, dropdb )否则,按以下步骤继续操作:用sa帐号注册到SQL Server.1beg in tran2go1use master2go1update sysdatabases2set status=03Where name=pubs24go如果得到(1 row affected),则1commit2go否则1rollback2go1sp_c on figure all

20、ow updates ,02go(5) 重新启动 SQL Server.3. 用户数据库管理用户数据库是用户创建的,用来存放用户数据的数据库。用户数据库的创建分为两部分,一部分是用来存放数据,一部分是用来存放事务日志。为了提高数据库的速度,最好将数 据库的数据部分和日志部分分开存储,即存放在不同的数据库设备上,这样也可以单独备 份事务日志。3.1. 数据库选项sp_dboptio n db name,opti on_n ame,ture falseabort tran on log full该选项决定当指定数据库日志段最后机会阀值越出时,对正在运行的事务的处理方法。缺省值为false,即事务被

21、暂停直到空间空余出来时再恢复。为ture时,日志存储空间空余出来前,所有需要写入日志的事务都 将停止。allow nulls by default:置为 ture,将列的缺省状态从 not null 置为 null ,这与ANSI标准一致。dbo use only :置为true时,只有数据库属主可以使用此库。ddl in tran :置为ture时,用户可以在事务中使用某些数据定义的命令。如: create table 。注意:临时库的ddl in tran 必须为false状态。no chkpt on recovery :决定在sql server 启动时对数据库进行恢复后是否加入 一个c

22、heckpoint 记录。置为 true 时,checkpoint 记录不被加入。no free space acctg :置为ture时,抑制剩余空间记帐及非日志段阀值活动的 执行。由于不再计算此时段的剩余空间,所以将加速恢复时间。read only :置为true时,用户可以从数据库中检索数据,但不能修改数据。select into/bulkcopy :置为ture时,可以执行select into 生成永久表;或用 bcp批量拷贝库例程,或高速批拷贝到没有索引或触发器的表。single user :设置为true时,每次只能有一个用户访问该数据库。查看数据库当前的具有的数据库选向的命令是

23、sp_dboption :举例:isql -Usa -P1 use MBFEWKDB2 go1sp_dbopti on2godatabase_opti ons abort tran on log fullallow nu Ils by defaultauto ide ntitydbo use onlyddl in traniden tity in nonunique in dexno chkpt on recoveryno free space acctgread onlyselect in to/bulkcopy/pllsortsin gle usertrunc log on chkpttr

24、un c. log on chkpt.unique auto_ide ntity in dex32查看数据库信息查看数据库信息的命令是sp_helpdbbisql -Usa -P1 sp_helpdb2 gon amedb_sizecreatedstatus举例:ownerdbidMBFEHISDB1600.0 MB sa7 Apr 08, 2002select in to/bulkcopy/pllsort, trunc log on chkptMBFEWKDB400.0 MB sa6 Apr 08, 2002select in to/bulkcopy/pllsort, trunc log o

25、n chkpt1 Jan 01, 1900no opti ons setmodel2.0 MB sa3 Jan 01, 1900no opti ons setsybsystemdb5.0 MB sa5 Apr 05, 2002no opti ons setsybsystemprocs100.0 MB sa4 Apr 05, 2002no opti ons setmaster28.0 MB satempdb22.0 MB sa2 Jun 14, 2002 select in to/bulkcopy/pllsort查看某一数据库的信息命令是:sp_helpdb db_name isql -Usa

26、-P1 sp_helpdb MBFEWKDB2 gon amedb_sizeownerdbidcreatedstatusMBFEWKDB400.0 MB sa6 Apr 08, 2002select in to/bulkcopy/pllsort, trunc log on chkptdevice_fragme ntskbytessizeusagefreewkdatadb200.0 MBdata only186608wkdblog100.0 MBlog on ly102368wkin dexdb100.0 MBdata only10161633常见问题及解决方法由于用户没有为用户数据库设置“ t

27、runc log on chkpt”选项,如果用户没有及时备份事务日志,当日志满时,用户事务不能正常执行,处于等待状态,这是任何操作都不能进 行,像死机了一样。此时连进行日志备份都不能进行。解决这个问题的办法如下:执行命令:dump tran database.namewith turncate_only这条命令的意思就是清空事务日志,其他事务就可以正常运行了。执行上面命令以后,由于事务日志被请空,为了保证数据的安全性,日志清空后要做完全 备份数据库。数据库的备份方法见第 5章。4. 用户管理4.1. 增加/删除用户Sql server 存在两个层次的认证:一个用户首先必须分配一个sql se

28、rver 注册帐户。在该用户要求访问的数据库中必须有该用户的标识。增加帐户:语法:sp_addlogin login_name,passed,defaultdb,deflanguage,fullname例如:sp_addlogin chentao,passord,Sybase修改帐户:sp_modifylogin login_name,option,value通过此命令可修改帐户访问的缺省数据库、缺省语言及该帐户的全名等选项。删除帐户:语法:droplog in login_ name修改口令:sp_password old_passwd ,n ew_passwd,log in_n ame增加

29、用户sp_adduser log in_n ame, namen_db,grp name别名:别名是多个sqlserver帐户共享的数据库用户名,多个帐户以同一个数据库用户的身份来 访问数据库,并具有与该数据库用户同等的权限。语法:addalias login_name,name_in_db别名信息记录在sysalternates 系统表中。锁定/解锁用户:sp_locklog in logi n_n ame,”lock| un lick”42查看用户信息查看用户信息的命令是sp_helpuser举例:isql -Usa -Pvpassword 1 use MBFEWKDB2 go1 sp_h

30、elpuser2 goUsers _n ameID_i n_dbGroup_ nameLogi n_n ameappuser6 publicappuserccpcuser3 mbfeccpcuserdbo1 publicsambuser4 mbfembuserpbuser5 mbfepbuser4.3.常见问题及解决方法自增加了用户以后,每个用户就有密码,如果想更改密码为空,步骤如下:1. 使用sa登录Server:isql -Usa -Psa_password -Sserver_ name2记录当前版本号(以当前版本号12000为例):? sp_c on figure upgrade ver

31、si on? go3修改当前值为492:? sp_c on figure upgrade vers ion ,492go4. 将某用户口令设置为NULL (以sa为例,当前口令为123456):? sp_password 123456,NULL,sa? go5. 重新设置当前版本号:? sp_c on figure upgrade versi on ,12000go5. 数据库备份/恢复每天业务完成后,最好对数据库进行备份,以防止数据库发生意外时数据的丢失。5.1. 数据库备份数据库备份主要通过转储数据库(dump database)和转储事务(dumptransaction ) 来完成。都允

32、许动态转储。转储数据库就是为整个数据库即数据和事务日志做一份物理备份。转储事务就是只为事务日志做一份物理备份。 只有当日志单独放在数据库设备上时,才能做转储事务。Dump transaction 命令为事务日志做备份。Dump transaction与许多操作系统提供的增量备份相似。它拷贝事务日志,提供自上次数据库或事务日志转储以来所有数据库变化的 记录。一旦dump transaction 拷贝了日志,它会截去其不活动的部分。在做数据库备份之前,一定要检查备份数据库是否启动,如果没有启动,要限启动备份服 务器,备份服务器的启动方法前面已经讲过。转储数据库命令语法:dump database

33、数据库名 to 转储设备名with n oi nit|i nit说明:转储设备名 可以是文件系统也可以时磁带设备with init的作用是当备份到磁带设备是从磁带开始备份,如果原来磁带上已有内容将被删除。举例:1. 以sybase用户登录系统2. 以sa用户登录数据库。$isql -Usa -Ppassword3. 备份数据库。1use master2go1 dump database MBFEWKDB to“/home/Sybase/mbfewkdb.backup2 go注意:如果修改了 sybase数据库中的系统参数,修改后最好备份master数据库。转储日志命令语法:dump tran

34、sacti onto withtru ncate_o nly no_log| no_truncate参数说明:trun cate_o nly:在数据与日志在同一数据库设备上时,用来截短日志,并不转储日 志。也不记日志。No_log:在没有足够空间的情况下截短日志。No_tru ncate:转储日志,但不截短日志5.2. 恢复数据库要把以前备份的数据库恢复,必须要先启动备份服务器。备份服务器的启动方法见2.1。装载数据库命令语法:load database from 恢复数据库的步骤如下:(1) 以sybase用户登录系统。(2) 以sa用户登录数据库。$isql -Usa -P(3) 恢复数据

35、库。$isql -Usa -P1 use master2 go1 load databaseDATABASE_NAME from DEVICE_NAME2 go1nline databaseDATABASE_NAME2go说明:(2) DABASE_NAME是要备份的数据库名字。(3) DEVICE_NAME是备份设备的名字,也可以是文件系统。如果是文件系统 要用“”括起来。举例:从 /home/sybase/mbfewkdb.backup文件中恢复 MBFEWKDB 数据库。1 load database MBFEWKDB from “/home/sybase/mbfewkdb.backup

36、 ” 2 go1 online database MBFEWKDB2 go装载日志命令语法:load transaction from 恢复数据库的步骤:1、用load database 装载最新的数据库备份。Load database 把数据库状 态设置为”offline ”2、用load transaction命令按顺序装载在最近的数据库转储之后生成的事务日志。3、用online命令把数据库的状态设置为 online,是数据库能为用户使用。6. 如何调整sql server基本配置参数为了调节sql server的性能以及系统资源的分配和利用达到最优效果。可以通过调整sqlserver的基

37、本配置参数达到。sql server中的配置可分为静态和动态两种。动态参数在使用sp_configure命令配置新值后立即生效。静态参数因需要sqlserver对内存进行重新分配,所以修改静态参数应该重新启动sqlserver 。系统参数存放在 maseter库中的 sysc on figures 表和 syscurc on figs 表中。6.1. 配置sqlserver 参数的方法配置sql server的方法就是通过sp_configure命令或直接修改文件 SYBASE.cfsp_c on figure 的使用方法如下:sp_c on figuren ame, values 如果只用s

38、p_configure 命令,此命令的作用是查看全部参数的值。如果用sp_configure“nam6,此命令的作用是查看参数“ nam6,当前的值。举例:更改用户联接数。1 sp_c on figurenumber of user connections ”2 goParameter NameDefault Memory Used Config ValueRun Valuenu mber of user connections2525912525显示出参数 number of user connections的值。1 sp_c on figurenumber of user connecti

39、ons ”,302 go此时,number of user connections的值仍然为25,因为它是静态参数,重新启动sqlserver后,此参数的值变为30。6.2. 常见问题及解决方法增加用户联接数当数据库报错说,用户联接数已达到最大值,不能打开新的进程时,修改用户联接数。1sp_c on figure number of user conn ecti ons,nu mber2go系统默认的是25,可以该为50。1 sp_c on figure number of user conn ecti on s,502 go因为这个参数是静态参数,必须重新启动数据库才能生效。配置sqlser

40、ver内存过大,服务器不能正常启动?SQL Server使用的内存与机器的内存总数有一定的比例关系。如果 Server使用内存太小, 影响到SQL Server的性能,但内存配置过大超过一定比例时,导致SQL Server不能启动。在ISQL中,用sp_configure total memory可以看到你的Server现在使用的内存大小。这 个数字单位为Page,每一个Page为2K。参数memory在启动Server时被读入内存。所 以memory被修改之后,必须shutdown Server,再重新启动Server,新的参数才生效。1sp_c on figure memory, nu m

41、ber_of_memory2go1rec on figure with override2go1shutdow n with no wait2go如果新的内存配置太大,SQL Server不能启动,那么必须修改 Master设备上的内存配置 参数。修改方法有两种:在$SYBASE/install目录下,使用buildmaster命令$buildmaster -d/path/master.dat -y cmemsize = XXX其中XXX为内存页数。如果新的内存大小合适,(2)修改配置文件 $SYBASE/SYBASE.cfg, 修改 total memory= xxxxxxSQL Server可以启动。SQL Server可以启动其中XXX为内存页数。如果新的内存大小合适,

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!