`
xiewanzhi
  • 浏览: 158233 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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_服务名_BAKUP

2.3.2 关闭Sybase数据库
使用isql命令登录Sybase数据库系统,在查询sysservers表查看可关闭的服务,如
isql –Usa -Sjoli
Password:
1> select * from sysservers
2> go
一般需要关闭的服务有:系统备份服务、系统主服务
在isql提示里先关闭系统备份服务(默认为SYB_BACKUP),再关闭主服务(默认可以不输入主服务名),如:
1>shutdown SYB_BACKUP
2>go
1>shutdown
2>go

2.4 Sybase用户管理
2.4.1 创建登录用户(login)
sp_addlogin login_name,passwd[,defaultdb[,deflanguage[,fullname]]]
例子:
1> sp_addlogin joli,joli,joli_db
2> go


2.4.2 删除登录用户(login)
例子:
1> sp_droplogin test
2> go
2.4.3 创建数据库用户(user)
sp_adduser login_name[,name_in_db[,grpname]]
例子:
1> sp_adduser joli,joli
2> go
2.4.4 删除数据库用户(user)
例子:
1> sp_dropuser test
2> go
2.4.5 修改该用户为该数据库dbo
例子:
1>use joli_db
3> sp_changedbowner joli

2.4.6 查看数据库用户信息
sp_displaylogin [login_name]
sp_helpuser
例子:
1> sp_helpuser
2> go
1> sp_displaylog joli
2> go
1> sp_who
2> go

2.4.7 修改用户口令
如果是修改sa口令,可用sa用户登录,然后执行以下命令修改
1>sp_password “旧命令 | null”,”new_password”
2>go
如果不是sa用户,则使用希望修改口令的user登录数据库,然后执行
1> sp_password 旧命令,新命令
2> go

2.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 init
2> name="lwz_dev",
3> physname="/opt/sybase-12.5/data/lwz.dat",
4> vdevno=2,
5> size=512000
6> go

说明:
物理设备名称为:joli_dev
物理设备文件路径为:/opt/Sybase/joli/joli_dev.dat
设备编号(该号不能重复)为:9
大小(单位为2K)为:1000M
(一般为用户数据库创建一个数字设备后,再单独为用户数据库创建一个日志设备)

2.5.2 镜像设备
例子:
1> disk mirror
2> 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 unmirror
name="设备名"
[,side=”{primary|secondary}]”
[,mode={retain|remove}]
//终止主/次设备:primary/secondary (缺省次)
//临时/永久终止:retain/remove (缺省临时)

例子:
1)临时终止主设备
1> disk unmirror
2> name="joli_dev",
3> side="primary",
4> mode=retain
5> go
2)永久终次主设备
1> disk unmirror
2> name="joli_log_dev",
3> side="primary",
4> mode=remove
5> go

? 恢复临时终止的镜像:
例子:
1> disk remirror
2> name="joli_dev"
3> go

2.5.4 删除设备
需要确定该设备上没有数据库。
例子:
1> sp_dropdevice test_dev
2> go
再删除操作系统设备文件。

2.5.5 查看设备状态
例子:
1> sp_helpdevice [设备名]
2> go
说明:
可查看设备是否镜像(相关镜像类型、是否有临时取消镜像等)等配置。

2.5.6 创建数据库
例子:
1> create database lwz on lwz_dev=1024 log on lwzdev_log_dev=200
2> 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=5
2> go
说明:
数据库joli_db在设备数字joli_dev上扩展10M,在日志设备joli_log_dev上扩展5M。

2.5.8 删除数据库:
例子:
3> drop
database joli_db
4> go

2.5.9 上线数据库
例子:
1> online database db_name
2> go

2.5.10 检查数据库状态
? 一般性检查
1>sp_helpdb
2>go
? 系统性检查
所有库检查:
1> dbcc checkdb
2> go
指定用户数据库检查:
1> dbcc checkalloc(db_name )
2> go

2.6 Sybase日志管理
在创建用户数据库的时候,应尽量为事务日志创建独立的日志设备(一般创建为数据库大小的20%),这样可以单独备份事务日志、防止数据库溢满、可以看到事务日志的占用情况及可以镜像等。
dump transaction db_name with truncate_only //不备份事务日志,直接清除。
dump transaction db_name with no log
dump transaction db_name to “路径/名字” //备份事务日志
? 检查log大小
1> dbcc checktable(syslogs)
2> go
快速查看log大小
1> select data_pgs(8,doa mpg)  from sysindexes where id=8
3> go

2.7 修改Sybase系统缺省参数
可修改$SYBASE/ASE-12_5目录 “服务名.cfg”文件,重新启动Sybase服务来修改Sybase系统参数。
也可使用Sp_configure来修改部分动态参数。
? 查询当前所有的参数配置
1>sp_configure
2>go
? 查询可动态修改的参数
1>sp_configure “abcdef”
2>go
? 查询特定参数的配置情况
1>sp_configure “参数名
2>go”
? 修改可动态配置的参数
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。

2.8 修改数据库个例配置
每个在设备上创建的数据库,都可设置如下参数:
abort tran on log full、 allow nulls by default、 auto identity、 dbo use only、 ddl in tran、 disable alias access、 identity in nonunique index、 no chkpt on recovery、 no free space acctg、 read only、 select into/bulkcopy/pllsort、 single user、 trunc log on chkpt、 trunc. log on chkpt.、 unique auto_identity index
可通过sp_dboption [db_name,"option_name",{true|false}]命令来修改这些参数的配置。
例子:
1> use master
2> go
1> sp_dboption joli_db,"trunc log on chkpt",true
2> go
说明:
检查点时,清除以前的日志。如果设置为off,则一直保留日志,继续增长,直到使用dump transaction命令。

2.9 网络服务配置
? UNIX
在$SYBASE目录下,interfaces文件提供用户服务名的配置。一般通过执行命令dsedit来做修改。
执行dsedit后,根据提示,一步一步的添加、修改即可完成配置。
? Windows
启动dsedit,选择server object->add,向server中新添一个数据源,在其属性“server address”中输入IP,Port(注意,IP地址和端口号间用“,”分隔,比如192.168.2.98,4100)。

2.10 检查数据库的版本
1> Select @@version
2> go

2.11 数据库坏页最小影响维护
在数据库发生可疑坏时,会脱机整个数据库(缺省),可以设置只脱机该可疑页(系统数据库不能改变)。
sp_setsuspect_granularity [dbname [,{"database"|"page"}[,"read_only"]]]
sp_setsuspect_threshold [dbname [,threshold]]
(必须具有sa_role且在master数据库中使用)
? 查看、修改数据库当前脱机设置
1) 查看设置为数据库脱机还是页脱机
1> sp_setsuspect_granularity joli_db
2> go
2) 设置数据库为页脱机
1>p_setsuspect_granularity joli_db,”page”
3) 查看设置的最大脱机页(缺省最大可可疑20页,超出该20页,一样会脱机数据库)
1> sp_setsuspect_threshold joli_db
2>go
4) 修改数据库最大可脱机页为300
1> sp_setsuspect_threshold joli_db,300
2>go
? 显示可疑页:sp_listsuspect_db
? 详细显示数据库可疑页信息:sp_listsuspect_page [dbname]
? 使数据库所有页联机联机:sp_forceonline_db dbname,{"sa_on"|"sa_off"|"all_users"}
? 使指定页联:sp_forceonline_page dbname,pgid {"sa_on"|"sa_off"|"all_users"} (//必须sa_sole在master中执行。)
2.12 其他常用维护
1) 可以执行命令$SYBASE/sybcent32/scjview使用图形界面进行维护。
2) 查看$SYBASE/ASE-12_5/install目录下的日志文件(*.log)。
3) 使用一些过程:sp_reportstats、sp_helpdb、sp_helpsegment segment_name(system,log,default)(sp_helpsegment logsegment检查可用于日志增长的空间)、sp_spaceused(sp_spaceused syslogs检查日志大小)、dbcc checkdb & dbcc checkcatalog & dbcc checkalloc、sp_lock等;也可以查询一些系统表:syslogs、master .. sysdevices、master .. sysusages、syssegments、sysindexes、sysdatabases等。
4) 查看当前启动的服务:showserver。
5) >dbcc traceon (3604) 将信息显示在控制台和写入errorlog文件。;>go;>dbcc memusage;>go;>dbcc traceoff (3604);>go
use xxdb
checkpoint
sp_dboption mydb,"single user","true"
设置单用户模式
sp_logiosize "8k"
设置I/O为8K缓冲池

3 备份设置
3.1 备份到磁盘
? 本地磁盘备份
例子:
1> dump database joli_db to “备份目标绝对路径/备份文件名”
2> go

还可使用如下命令进行远程备份
dump database_name to “/u01/data/0102.dmp” at remote_server
dump transaction database_name to “/u01/log/0102.dmp” at remote_server

3.2 备份到磁带
dump database database_name to “/dev/nrmt4” with init //初始化(设备被覆盖)
dump database database_name to “/dev/nrmt4” //默认 noinit nounload
dump database datbase_name to “/dev/nrmt4” with unload //磁带回卷并卸下
dump database 数据库名 to “/dev/rmt/0”
dump transaction 数据库名 to “dev/rmt/0” with no_truncate

3.3 恢复数据库
? load database 数据库名 from “dev/rmt/0”

3.4 建立自动备份
可先把Sybase数据库备份到本地磁盘,压缩后再备份到磁带上。
1) 创建一个本地目录或者远程目录的备份设备。
2) 创建一备份用户。
3) 编写备份脚本,并指定自动备份定时crontab任务。

无法备份解决
sp_dropserver SYB_BACKUP
go
sp_addserver SYB_BACKUP,null,jack_BACKUP #jack_BACKUP改成你的备份数据库名
go

 

 

分享到:
评论

相关推荐

    sybase教程sybase教程

    sybase教sybase教程程sybase教程sybase教程sybase教程

    sybase 教程 多本本合一

    sybase 教程 多合一 sybase 教程下载网上搜集的 欢迎下载。

    sybase教程.doc

    sybase简介

    Sybase数据库教程.doc

    1 Sybase概述 1. C/S简介 CS(Client/Server)结构是传统的网络集中共享式数据库的扩充。在CS结构中,应 用程序(客户)在工作站上运行应用程序进行数据处理,服务器程序运行于服务器上以 响应客户的请求并维护数据...

    Sybase基础教程

    Sybase基础教程 主要讲述SyBase数据库的基本知识和使用指南

    Sybase基础教程.

    数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。SQL Server的安全管理是一种...(2)Sybase服务器——服务器登录 (3)Sybase数据库——数据库用户登录 (4)数据库对象——对象授权

    sybase教程Sybase IQ 是专为数据仓库应用设计的高性能决策支持服务器。

    Sybase IQ 是专为数据仓库应用设计的高性能决策支持服务器。 Sybase IQ 是 Adaptive Server® 产品系列的一部分,该系列包含面向 企业事务环境和混合负载环境的 Adaptive Server® Enterprise,此 外,它还包含作为 ...

    系统管理员培训教程(sybase)

    sybase安装,sybase 连接,sybase调试,sybase配置,相关编程

    sybase入门教程

    70年代,随着大型共享数据库应用的普及,美国SYBASE公司基于当时的关系代数理论所提出的数据库关系模型,开发了Sybase数据库系统; Sybase是基于SQL(Structured Query Language)的著名关系模型数据库系统,是世界...

    sybase基础教程(包含四本电子书)

    包含了四本比较经典的sybase教程。适合初学者使用。资料比较全

    SYBASE教程 数据库

    这是一篇关于 sybase数据库教程的微软word文档 ,希望对大家有帮助。

    Sybase 12.5 安装教程

    Sybase ASE 12.5 安装配置教程 ,for Windows

    sybase基础教程

    sybase初级基础教程,让你快速了解此数据库的使用。

    sybase数据库安装教程截图

    sybase数据库的安装教程。详细的截图。 包括sybase的安装,怎么创建服务等

    SYBASE数据库实例教程

    SYBASE数据库实例教程;徐人凤;西安电子科技大学出版社.pdf

    SYBASE客户端-安装手册图文步骤教程

    客户端安装。图文引导,一步一步教你使用。共有五册: SYBASE服务器-安装手册 SYBASE服务器-配置手册 SYBASE客户端-安装手册 SYBASE客户端-配置手册 SYBASE数据库使用命令

    Sybase IQ教程

    培训专用,内容很详细,相信对学习Sybase IQ很有好处

    SYBASE服务器-安装手册图文教程

    图文引导,一步一步教你使用。共有五册: SYBASE服务器-安装手册 SYBASE服务器-配置手册 SYBASE客户端-安装手册 SYBASE客户端-配置手册 SYBASE数据库使用命令

Global site tag (gtag.js) - Google Analytics