`
lubacui
  • 浏览: 27046 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

转载的一篇SYBASE的文章

阅读更多



安装好sybase数据库服务器以后,没有什么比使用这个数据库最重要的事情了。


一、创建数据库

但是在开始之前,很有必要定义用户数据库所需要的存储区域,而不要在服务器默认的主设备(master)上创建用户数据库.



创建数据库设备:通过sybase安装过程创建了master和sybsystemprocs,所有其他的数据库设备则是通过 disk init 命令来创建。我们必须保证sybase的用户对欲创建的设备的目录具有读写权限,否则就无法创建成功。先以sybase用户登陆linux系统(数据库是以sybase用户安装的,关于安装和初试配置,请参照“Redflag Server 4搭建sybase”一文),进入sybase用户的主目录 /opt/sybase,创建目录userdata;启动数据库服务,用sybase的isql连接数据库,然后执行disk init 来完成此项操作。

[sybase@sybase sybase]$ cd ASE-12_5/install

[sybase@sybase install]$ ./startserver      //启动sybase服务器

[sybase@sybase sybase]$ cd

[sybase@sybase sybase]$ mkdir userdata    //创建目录用于存放用户数据库

[sybase@sybase sybase]$ cd /OCS-12_5/bin

[sybase@sybase bin]$ ./isql –U sa –S SYBASE //连接数据库服务器,我的数据//库服务器名称为SYBASE,sa

//密码为空

[sybase@sybase bin]$ ./isql -U sa -S SYBASE   //下面是回显

保密字:

Msg 2401, Level 11, State 2:

Server 'SYBASE':

Character set conversion is not available between client character set 'gb18030'

and server character set 'iso_1'.

No conversions will be done.

Msg 4017, Level 16, State 1:

Server 'SYBASE':

Neither language name in login record 'chinese' nor language name in syslogins

'<NULL>' is an official language name on this SQL Server.  Using server-wide

default 'us_english' instead.                //回显到此,进入客户操作模式

1>     disk init                   //如果输错了,按“Ctrl”+”back space”删除

2>     name=userdev,             //命名最好便于识别为佳

3>     physname=”/opt/sybase/userdata/userdev.dat”,     //要用绝对路径

4>     size=”500M”

5>     go



1>     disk init                    //给日志文件分配设备

2>     name=logdev,

3>     physname=”/opt/sybase/userdata/logdev.dat”,

4>     size=”50M”

5>     go






更改默认设备:如本文开头部分所言,为了防止用户数据库被分配到数据库系统主设备master上,应该在安装完数据库后修改默认设备—安装完sybase ASE后,master是唯一的默认设备。Sybase建议,master设备只应该提供给系统数据库而不是用户数据库。因此,对于用户数据库,我们应当单独创建设备,并且把用户设备设置成默认状态。上一步我们已经创建了用户设备“userdev”和“logdev”.其过程如下:

1>       sp_diskdefault  ‘master’, ‘defaultoff’  //取消master的默认设备资格

2>       go                            

1>       sp_diskdefault  ‘userdev’, ‘defaulton’  //设定uerdev为默认设备

2>       go

1>  sp_diskdefault  ‘logdev’, ‘defaulton’   //设定logdev为默认设备

2>  go


  在后面创建用户数据库的过程中,如果不指定数据库设备,则该用户数据库理所当然地创建在默认设备。



创建数据库:本数据库创建在设备 userdev上,而在分开的设备(logdev)上创建数据库日志。

1>     create database mydatabase   //创建一个名为mydatabase的数据库

2>     on userdev = “50M”          //数据库的存储空间为50M,数据库设备      

                          //是userdev,而不是master

3>     log on logdev=”10M”             //日志文件的存储空间为10M

4>     go


  也可以用命令 create database mydatabase 来创建用户数据库mydatabase,这个数据库也会默认的创建在设备userdev上,日志文件也创建在userdev,但不幸的的是,用户创建的这个数据库将只有2M的容量,恐怕这不是创建者所期望的。因此,不管是Sybase还是我本人,都强烈建议使用上表的过程创建用户数据库,以便于这个数据库可以满足真实的应用场景。创建完数据库后,我们很想知道创建的这个数据库到底是怎么一个状况?通过系统存储过程-sp_helpdb来获得数据库的各种信息。下面是我的某个sybase服务器的范例:

1> sp_helpdb

2> go

name                     db_size       owner                    dbid 

         created          

         status                                                                                                

------------------------ ------------- ------------------------ ------

         ------------------

         ------------------------------------------------------------------------------------------------------

master                         12.0 MB sa                            1

         Jun 28, 2005     

         mixed log and data                                                                                    

model                           4.0 MB sa                            3

         Jun 28, 2005     

         mixed log and data                                                                                    

myfirstdatabase               110.0 MB sa                            4

         Jul 08, 2005     

         no options set                                                                                        

secdatadb                      98.0 MB sa                            5

         Jul 08, 2005     

         no options set                                                                                        

sybsystemdb                     4.0 MB sa                        31513

         Jun 28, 2005     

         mixed log and data                                                                                    

sybsystemprocs                120.0 MB sa                        31514

         Jun 28, 2005     

         trunc log on chkpt, mixed log and data                                                                

tempdb                          4.0 MB sa                            2

         Aug 13, 2005     

         select into/bulkcopy/pllsort, trunc log on chkpt, mixed log and data                                   

(1 row affected)

(return status = 0)

1>


  在创建用户数据库时,应该预留足够大的空间,以便能够保留将来输入的所有数据。但是也不要把数据库定义得太大,以免在将来恢复数据时产生麻烦。究竟需要定义多大的空间才算合适,这需要数据库管理员多次试验才可以决定的。一个经验是-低估一个数据库的大小比高估要好,如果数据库空间太小了,可以很容易的扩充数据库的空间,如果空间过大,则非常麻烦。这里,我们来修改一下前面创建的数据库的空间大小,过程如下:

1>     alter database mydatabase

2>     on userdev=”1024M”               //由50M变成1G

3>     log on logdev=”50M”               //由10M变成50M

4>     go


二、数据库的管理

设置数据库管理员密码:在安装完sybase ASE数据库后,数据库管理员的默认管理员密码为空,基于安全考虑,必须为数据库管理员账号设置密码。先以账号sybase登录系统,然后启动Sybase数据库,用isql连接数据库服务器(操作过程如前面“创建数据库设备”一节),接着执行下面的操作:

1>     sp_password null , dr5623H    //设置新密码为“dr5623H”

2>     go


  在退出数据库,下一次客户端连接数据库时,提示用户输入密码。


  用户和授权:sybase ASE服务器提供一种严密的体系来保障数据的安全,并且使数据的保护级别达到非常精细的程度。在通常情况下,数据库服务器不是只给一个用户sa来使用,为了让数据库满足实际需求,需要在 sybase 数据库里添加账号/用户,为添加的用户分配适合的权限。这个操作分以下几步进行:

1、  添加数据库系统的注册账号。执行存储过程sp_addlogin来完成数据库注册账号的添加,如 exec sp_addlogin sery , d7#W6g , mydatabase 表示添加一个注册账号sery,密码是“d7#W6g”,登录到默认数据库为“mydatabase”。这个操作执行完毕后,将在master数据库的syslogins表中增加一行纪录。添加数据库系统注册账号属于服务器级的安全,换句话说就是这个账号只能连接数据库服务器,但没有访问用户数据库的权力。

2、  添加数据库用户。执行存储过程sp_adduser将用户直接添加到数据库,添加数据库用户属于数据库级的安全,这时才可以以用户的身份访问用户数据库。这个操作执行完毕后,将在允许访问的数据库的sysusers表中添加纪录。

3、  授权。能够访问数据库但并不意味可以访问其中的数据,有时需要具备单个数据库对象的相应许可,才可以选取、更改数据库所属表中的数据信息或执行一个存储过程。这是属于对象访问级的安全。授权的格式为: grant  <权限列表> on <表名>  to <角色/用户>。这个操作执行完毕后,会向sysprotects表中添加纪录。

  接着,我们通过下面的事例来总结这3个步骤:

[sybase@sybase sybase]$ cd ASE-12_5/install

[sybase@sybase install]$ ./startserver      //启动sybase服务器

[sybase@sybase sybase]$ cd /OCS-12_5/bin

[sybase@sybase bin]$ ./isql –U sa –S SYBASE –P dr5623H

1>     sp_addlogin sery , d7#W6g , mydatabase

2>     go

1> use mydatabase

2> go

1> sp_adduser sery

2> go

1> grant select ,insert, update on custom to sery

2> go

1>     shutdown

2>     go

[sybase@sybase bin]$ ./isql –U sery –S SYBASE –P d7#W6g  //以用户sery登录数

//据库mydatabase

1>


  为了便于维护和管理数据库,最好让注册名和数据库用户名使用相同的名称。另外,注册用户的删除、数据库用户的删除以及授权的删除都是比较简单的了,请参照下面的操作:

1>     revoke select ,insert, update on custom from sery

2>     go

1>     sp_dropuser sery

2>     go

1>     sp_droplogin sery

2>     go


  需要注意的是,上述操作除用户sery登录数据库外,都是在sa下完成的。




分享到:
评论

相关推荐

    sybase性能检测文章

    sybase性能检测文章sybase性能检测文章

    sybase文章精选~~

    - **.chm文件**:“sybase文章精选.chm”很可能包含关于Sybase ASE的详细教程、最佳实践和常见问题解答,是学习和提升Sybase技能的重要资料。 总的来说,Sybase是一个强大且灵活的数据库系统,它的技术和应用广泛...

    sybase

    Sybase 是一款由 Mark B. Hiffman 和 Robert Epstern 在1984年创立的公司所开发的数据库产品,自1987年起正式推出。Sybase 提供了多种操作系统环境下的版本,包括UNIX、Novell Netware 和 Windows NT。其中,在UNIX...

    sybase 15.7 64位驱动,sybase数据源设置,sqlserver链接sybase设置

    本篇文章将详细讲解Sybase 15.7 64位驱动的安装与配置,以及如何设置Sybase数据源和在SQL Server中建立到Sybase的链接。 首先,让我们来了解`Sybase 15.7 64位驱动`。Sybase驱动程序是连接到Sybase数据库服务器的...

    Sybase IQ 官方文档(Sybase参考手册)

    Sybase IQ是一款高效的数据仓库解决方案,专为大规模数据分析和决策支持而设计。作为Sybase公司的产品,它以其优秀的性能、可扩展性和对复杂查询的处理能力著称。本系列文档涵盖了从入门到高级的全方位知识,包括...

    sybase 客户端1 sybase 客户端1

    sybase 客户端1 sybase 客户端1 sybase 客户端1 sybase 客户端1 sybase 客户端1 sybase 客户端1 sybase 客户端1 sybase 客户端1 sybase 客户端1

    sybase ase for linux 12.5安装

    Sybase ASE for Linux 12.5 安装指南 本文档旨在指导用户如何在 RedHat AS 5 上安装 Sybase ASE for Linux 12.5。 installation process covers the creation of a Sybase directory, setting up the user and ...

    sybase 客户端2 sybase 客户端2

    sybase 客户端2sybase 客户端2sybase 客户端2sybase 客户端2sybase 客户端2sybase 客户端2

    SYBASE数据库安装举例

    这篇文章将详细介绍 SYBASE 数据库安装的步骤和要求。 安装前的准备 在安装 SYBASE 数据库之前,需要准备以下几项: * 客户方需要提供满足要求的机器、网络和操作系统 * 长益方需要准备数据库软件、商友安装程序...

    sybase驱动JAR包

    sybase3驱动sybase3驱动sybase3驱动sybase3驱动sybase3驱动sybase3驱动sybase3驱动

    Sybase 使用指导手册Sybase 使用指导手册

    Sybase 是一款强大的关系型数据库管理系统,广泛应用于企业级数据存储和处理。本手册旨在为用户提供全面的操作指南。 **第一章 Sybase 的安装** 1. **操作系统补丁** 在安装 Sybase 之前,确保操作系统已经应用了...

    Sybase ASE12.5附带的Sybase Central完整免安装版

    **Sybase ASE12.5** 是Sybase公司推出的一款高度可扩展的企业级数据库管理系统,全称为Adaptive Server Enterprise。这个版本在1990年代末期发布,它以其高效性能、高可用性和数据安全性而受到业界的认可。ASE12.5在...

    Sybase12.5 数据库创建与导入数据库

    本篇文章详细讲解了创建 Sybase 12.5 数据库的步骤,以及如何导入数据库的过程,为读者提供了一个详细的指南,帮助读者更好地理解 Sybase 数据库的创建和导入过程。 知识点: 1. Sybase 12.5 数据库的创建过程 2. ...

    Sybase数据库连接工具

    中括号中表示服务器名称,你可以自己起一个标记性的 名字。将192.168.100.2替换成你将要连接的Sybase服务器的IP地址,将8888 替换成Sybase服务器的监听端口。 注意:中间使用英文逗号分割。 3.双击目录sqladv-12_5...

    sybase16 ODBC驱动

    Sybase是一个强大的企业级关系型数据库管理系统(RDBMS),由Sybase公司开发。它支持多种平台,包括Unix、Linux和Windows,并广泛应用于金融、电信等行业。Sybase16 ODBC驱动作为桥梁,使得应用程序能够通过标准的...

    sybase12.5简单安装客户端

    Sybase ASE是一款企业级的关系型数据库管理系统,广泛用于数据存储、管理和处理。这个“简单安装客户端”是为那些需要连接到Sybase服务器但不需要完整数据库服务的用户设计的。 描述中的“压缩包,解压后直接批处理...

    4、datax同步sybase相关-sybase到hdfs

    本篇主要介绍如何使用 DataX 将 Sybase 数据库中的数据同步到 Hadoop 分布式文件系统(HDFS)。 1. **RDBMSReader 插件** RDBMSReader 是 DataX 的一个通用数据库读取插件,它通过 JDBC 连接来从关系型数据库中...

    Sybase数据库连接方法

    本篇文章将详细介绍如何在应用程序中连接到Sybase数据库,以及利用提供的文件来实现这一目标。 首先,我们关注标题中的“Sybase数据库连接方法”。在.NET环境中,我们可以使用Sybase的ADO.NET提供程序——`Sybase....

    JTDS和JDBC连接Sybase数据库

    标签中的“源码”可能意味着这篇博客文章深入解析了JTDS驱动的内部实现,或者提供了自定义连接的示例代码。而“工具”可能指的是JTDS作为一个工具类库在开发过程中的作用,或者是关于如何配置和使用这个工具的一些...

Global site tag (gtag.js) - Google Analytics