Sybase技术问题问答

来源:互联网 发布:轻量级c语言ide 编辑:程序博客网 时间:2024/04/29 14:50

关于Sybase EAServer的问题与解答如下:

  1、用户第一次安装EAServer的时侯没有输入license, 问怎么把license补录进去?  答:执行安装盘上的setup.exe,选择 upgrade license。   2、一个EAServer实例最多支持多少个http连接?  答:这个问题没有绝对的答案,因为这跟内存有关,目前EAServer最大只能使用2g的内存,在这个限制条件下,应用程序不同,每个连接正常工作所要占用的内存就不同,所以没有绝对的答案。
    建议用户自己做测试,如果一个EAServer所能支持的连接数满足不了用户的要求, 可以通过配置cluster来达到负载均衡的目的。   3、用PB程序连接EAServer的时侯连接数不够用?  答:调高iiop client sessions和max threads的数目,然后重启EAServer。

 二、关于Sybase IQ的问题与解答如下:

  1、能否重新配置sybase IQ的sort order或charset?  答:不能。创建IQ库时才能选择Collation(包含charset和sort order),这并不是一个可随时修改的配置参数。   2、能否在IQ客户端WINDOWS平台使用load命令将IQ客户端所在机器上的数据文件导入IQ数据库?  答:Sybase IQ 15.0以后的版本可以,单之前的版本不支持这种做法。具体来讲:
    1.Sybase IQ 15.0之前的版本不支持客户端加载。
    2.Sybase IQ 15.0可以支持客户端加载,但是要求客户端和服务器端的版本都必须是Sybase IQ 15及以上版本。
    3.Sybase IQ 15中的lOAD语句中可以使用 USING CLIENT FILE子句来显示的指定数据文件存放在客户端,同时需要set option allow_read_client_file='ON'是server能够从客户端读取数据文件。  3、在IQ中,字段类型是否可以通过alter table来修改?  答:不可以。需要通过以下3步来完成:
    1)添加新列(可以使用alter table…add命令完成)
    2)update新列使得新列数据等于原来需要被修改字段类型的列中的数据
    3)删除原来的列(可以使用alter table…drop命令完成)

 三、关于Sybase ASE的问题与解答如下:

  1、如何给ASE中的单个用户设置90天密码有效?  答:可以通过下面的命令更改某帐号的口令有效期时间 sp_modifylogin loginame , "passwd expiration", value
    口令的有效期(以天为单位),可以是介于 0 和 32767 之间的任何值,且包括 0 和32767。
    更详细的资料可以参见参考手册中 sp_modifylogin 存储过程的介绍   2、在ASE15中,可以创建多少个数据库设备?  答:在 Adaptive Server 15.0 之前的版本中,虚拟页是在内部以 32 位整数格式描述的:第一个字节存放设备号 (vdevno),随后的三个字节描述设备中的页偏移(虚拟页数,以 2K 字节为单位)。这种体系结构将设备数限制为 256,将每个设备的大小限制为 32 千兆字节 — 整个服务器的最大存储限制为 8 TB。在 Adaptive Server 15.0 中,设备号和页偏移以独立的 32 位整数存储。新的体系结构最多允许创建 2,147,483,647 个磁盘设备,每个磁盘设备大小最大为 2,147,483,648个2K块或4TB。现在,必须从 sysdevices 和 sysusages 的vdevno 列中获取设备标识符。这些表的 high、low 和 vstart 列不再存储设备号和虚拟页号,而只存储虚拟页号   3、在ASE中,如何online engine?  答:1)参数配置:版本ASE125之前,sybase server有参数 min online engines和 max online engines来实现对操作系统cpu的有效利用。通常我们配置max online engines为dataserver所使用的cpu数,该值不能大于os有效的cpu数。当启动servser时,sybase自动启用engine数是’max online engine’所配置的cpu个数。
     配置方法:sp_configure ‘max online engine’,n
     在版本ASE12.5,sybase server 取消了参数 min online engines,增加了 number of engines at startup。max online engines不再决定server启动时所启用的cpu数,而是由number of engines at startup来决定,但是number of engines at startup不能大于os有效的cpu数,同时不能大于max online engines的配置值。
     配置方法:sp_configure ‘number of engines at startup’,n
     配置方法:sp_configure ‘max online engine’,n
   2)存储过程:在ASE12.5版本之后,我们可以使用存储过程 sp_engine 来 online/offline engine。语法为:
     sp_engine {"online" | [offline | can_offline] [, engine_id] | ["shutdown", engine_id]}
    例如,要online engine 1,则 1> sp_engine “online”,1 2> go   4、咨询ASE中各系统角色的权限?  答:dtm_tm_role   两阶段提交DTM选项功能管理权限
    ha_role     HA选项功能管理权限
    js_admin_role  Job Scheduler任务的管理权限
    js_client_role Job Scheduler任务的执行权限
    js_user_role  在Job Scheduler中创建和运行job的权限
    messaging_role 可以运行msgsend和msgrecv函数
    mon_role    可以访问ase的monitor表,这些表以mon开头
    navigator_role 用于 navigation server或者sybase MPP组件
    oper_role    系统操作员,执行数据库dump/load
    replication_role replication server 管理权限
    sa_role     ase系统管理员
    sso_role    ase系统安全员
    sybase_ts_role sybase技术支持角色   5、关于ASE15的License常见问题解答?  答:1)下载的license文件放到哪里?
       放在目录下:
       $SYBASE/SYSAM-2_0/licenses
       然后启动:
       sysam start(如果选择使用server类型license)
       再启动:
       ASE
     2)报错:“Future license file format or misspelling in license file”
      license文件格式有问题,将license文件中最后的空行和小方格删除,server启动成功。
     3)数据库无法检索到license
      请在启动ASE之前先用安装SYBASE的用户登陆操作系统,用命令sysam start来启动license server,然后再启动数据库服务器。
     4)用户的license不能使用
      由于hostid的信息不准确造成license无法使用。请执行$SYBASE/SYSAM-2_0/bin/lmutil lmhostid得到hostid的信息,用这个信息重新生成一个新的license。
     5)用户的license不能使用
      License文件是对的,起不来的原因是server的master库是从开发版ASE下直接拷贝过来的,因此在ASE-15_0/sysam/servername.properties文件中记载着PE=DE,LT=DT等开发版的信息,这些信息跟license文件中的相应信息对不上,所以server起不来。
      请将servername.properties中的PE和LT改成跟license文件一致,然后重新启动server。
     6)用户的license不能使用,报错:
      SySAM: Failed to obtain 1 license(s) for ASE_CORE feature with properties 'PE=EE;LT=SV
      将ASE-15_0/sysam/servername.properties文件中的项改为与文件 .lic 中的项匹配.
     7)日志中报一些信息:
      serverAdaptive Server Enterprise User Connection Report.
      serverMaximum number of User Accounts during current sample period: 8.
      serverMaximum number of User Accounts since startup: 8.
      serverMaximum Configured Number of User Connections during current sample period: 400.
      serverMaximum Configured Number of User Connections since startup: 400.
      serverMaximum Number of User Connections during current sample period: 13.
      serverMaximum Number of User Connections since startup: 47.
      serverMaximum number of user seat licenses used during current sample period: 3.
      serverMaximum number of user seat licenses used since startup: 7.
    这些信息只是sybase的一些监控信息,对系统的运行没有任何危害。
    如果不想再显示这些信息,可以考虑关闭此参数,做以下设置: sp_configure "license information",0
     8)初始化设备报错,不能超过5G
      当使用 Express Edition license 时, 不能超过license 限制,硬盘空间 5G.
     9)报错: license for 1 ASE_CORE (2006.0517) will expire Mon Apr 30 09:18:25 2007.
         启动license server后重启ASE.
    10)在安装sybase15.0.1补丁时遇到如下错误提示,请问是何原因引起?
      Failed to obtain 1 license(s) for ASE_CORE feature with properities ‘PE=EE; LT=SR’
      Installer unable to checkout a suitable Adaptive Server Licese
      Do you want to continue without the license?
      Adaptive server may not start without a suitable license
      在ASE-15_0/sysam/下面的servername.properties文件中应该记载了PE=...,LT=....等信息,这些信息同样也记录在license文件中。出现这个问题的原因是servername.properties文件中的信息与license文件中的信息不一致。
      请修改servername.properties文件中的PE和LT,改成跟license文件一致。
    11)正在使用的为开发版,有用户数的限制,等正式产品到货时还用重装吗?
      不用,装入license就可以.  6、什么是Sybase ASE CE产品?  答:Sybase ASE CE产品是 ASE Cluster Edition的缩写,是支持集群方式的Sybase数据库产品。它不同于以往的ASE产品,是由多个“实例”协同管理一组数据,从应用角度看,如同一个系统。另外,与集群相关的软件就在ASE中,无需调用操作系统的集群软件。同时具备均衡负载的能力,其均衡负载可以由用户调节,设定灵活的负载均衡方式。   7ASE CE是为了提高性能吗?  答: 数据库集群和硬件系统集群不只为了提高性能,主要是解决可用性和可管理性问题的。可用性问题是改进快速的数据库恢复能力和active-active的解决方案。可管理性就是易于安装、配置、运营管理和负载管理的能力。Sybase ASE CE增加了逻辑集群的概念,使得不同的应用模式作用于不同的逻辑集群,这样便于管理和灵活配置。

 四、关于 RS 的问题与解答如下:

  1、RS配置为warm standby,那么truncate table可以被复制到目标库么,select into呢,为什么?  答:SYBASE的复制服务器是的复制机制是基于数据库日志进行复制的。对于select into这样的“最小事物日志操作”由于没有将事物记录在数据库的日志中,所以是不能够被复制的。
    在warmstandby的环境下,对于truncate table默认是可以复制的。同时也可以通过修改logic connection的属性,将send_truncate_table更改为OFF,关闭对于truncate table进行复制的功能。  2、 在RS中,执行过rebuild queue或sysadmin sqm_purge_queue后无法复制的问题?  答:1)检查是否有admin who_is_down是否有rep agent / DSI的状态处于down 或 suspend,如果有将其resume
    2)检查错误日志中是否记录类似信息:
     WARNING #6074 GLOBAL RS(GLOBAL RS)-/sqmoqid.c(275) Rejecting messages for MARESIAS.REPMARESIAS_RSSD from PINHO.REPPINHO_RSSD
      如果有此信息表示RS服务器侦测到有丢失的数据,需要执行下面命令忽略丢失:ignore loss from PDS.pdb to RDS.pdb
      go  3、 如何解决RS日志中的Error message 24057的问题?
    Warning 24057 : sqt remove largest transaction no candidate found for removal
  答:增加sqt_max_cache_size。

 五、关于Sybase MA的问题与解答如下:

  您好:
  在IBM 4700的存储上,REMOTE MIRROR的镜像无法直接被AIX读取,虽然通过一种变通的方法可以实现,但这种变通方法的可靠性可能仍需要考量。
  希望能请教一下以下问题:
  1、对于低端和高端存储,MA是否是存在不同的实现方法?如是,希望能提供一下相关文档的下载链接。
  
答:至于IBM,不论是高端还是低端,MA的实现方式是一样的。而且remote mirror在同步时,也可以保证镜像设备可读。
  2、有没有在4700上实施MA的案例可供参考?
  
答:Sybase中国公司曾经在DS4800上试验成功MA解决方案,目前在国内有成功应用,例如:黑龙江社保。   3、另外,官方网站上关于MA的资料较少,可否提供一些链接?  答:我们已给你邮寄一些资料,其他资料可以到http://www.sybase.com/detail_list?id=71452获取

  4、可否从MA的从点整库复制到另一个从点?有几种方式?

  答: 可以。虽然Sybase复制技术有多种复制方法,如:常规表复制,Warmstandby和MSA等不同的方式,但是我们推荐使用Warmstandby方式为好。  5、直接从MA日志,还是从从点的日志  答:被复制点为主点,复制点(从点)为备点,可以直接从备点日志复制。

 六、其他问题与解答如下:

  1、 关于将数据库状态设置为-32768的解释?

  答:sysdatabases中的status字段如果更改为-32768值,数据库将在ASE服务启动时置为bypass状态
     bypass状态ASE服务将不会对数据库进行正常的recovery操作,这个状态一般用于在数据库出现故障时,
     在bypass状态下可以使用bcp等工具对数据库的数据进行导出,bypass状态下数据库为只读状态。。

  2、 如何执行reorg 系列命令来优化Dol表及其索引?

  答: Reorg命令根据使用的选项,回收页上未使用的空间、删除行转移或将表中的所有行重新写入新页。通过整理表空间,可以有效改善表访问的性能。
     可以使用的参数有: reclaim_space回收由删除和更新操作所留下的未使用空间。对于表中的各个数据页,如果有已经提交删除或者行缩短更新操作产生未使用空间,该参数将连续重写当前这些行,使未使用空间保留在页尾;如果页中已没有行,则释放该页。
     forwarded_rows删除前移行
     compact 组合reclaim_space和forwarded_rows的功能
     Rebuild 如果指定了表名,则将表中的所有行重写到新的页;如果指定了索引名,reorg将重建所以。
    示例1:回收titles表中的未使用的页空间
      reorg reclaim_space titles
    示例2:回收索引titleind中的未使用页空间
      reorg reclaim_space titles titleind
    注意:reorg rebuild要求将数据库选项select into/bulkcopy/pllsort设置为true,并在数据库中运行checkpoint

 

转自:http://www.datacvg.com/cn/jsqyinf.asp?id=30