Sybase12.5-3 for Linux安装

Sybase12.5-3 for Linux安装

  一、     需了解的几个简单概念
  Adaptive Server:

  一种关系数据库服务器而矣,一般有Adaptive Server、Backup Server、Monitor Server、XP Server、Adaptive Server实用程序、脚本及配置文件等。

  Backup Server:

  Backup Server是一个基于Open Server的应用程序,用于管理Adaptive Server的所有数据库备份(转储)和恢复(装载)操作。一般安装新的Adaptive Server服务器时带上Backup Server服务就可以了。

  设备和系统数据库:

  设备是用来存储数据库和数据库对象的操作系统文件。Adaptive Server将O_SYNC选项与操作系统文件一起使用,以确保数据可以可靠地写入磁盘。Adaptive Server需要下列设备:

  Master设备――用于存储系统数据库。

  Sysprocsdev设备―― 用于存储系统过程。

  当然,一般不需要手动来创建这两个设备,当创建新的Adaptive Server同时也会创建master和sysprocsdev设备。

  系统数据库都干什么用:

  Master设备默认包括下面这些系统数据库:

  Master-整体控制Adaptive Server的操作,并存储关于所有用户,用户数据库、设备、对象和系统表条目的信息。Master数据库完全包含在主设备上,不能扩展到其它任何设备上。

  Model-为新的用户数据库提供模板。Model数据库包含所需的系统表,这些系统表被create database命令复制到新的用户数据库中。

  Tempdb-Adaptive Server的工作区。系统次启动Adaptive Server时,将清除tempdb数据库,并从model数据库重建。

  注:样本数据库在安装期间存储在主设备上,但安装完后应将其移动到用户定义的设备上。

  Sybsystemdb设备:

  Sybsystemdb设备存储sybsystemdb数据库,该数据库存储关于正在处理的事务的信息,也可在恢复过程中使用。

  Sybprocsdev设备:

  Sybprocsdev设备存储sybsystemprocs数据库,该数据库包含大部分由sybase提供的系统过程。系统过程是用于执行系统任务的sql语句和控制流语句的集合。

  可选的设备及数据库:

  当然,上面这些是Adaptive Server必需拥有的设备和数据库,可选的用于审计的sybsecurity设备和数据库,样本数据库pubs2、pubs3 ,sytbsyntax数据库(例如装了此数据库可用sp_syntax “select”来查看相关语法),用于存储数据库一致性检查程序(dbcc)的结果的dbccdb数据库。

  二、     预安装任务

  1:环境变量

  useradd sybase –g sybase 添加sybase用户,passwd sybase修改密码,我比较喜欢使用这样的配置:使用bash shell,它有简单的历史命令可用,但以前在用FreeBSD时用的csh可是智能历史命令,Linux上好像没有,它还可以在按一下Esc后使用vi来编辑这个命令。这个很方便。所以我的 .bashrc 文件如下:

  if [ -f /etc/bashrc ]; then

  . /etc/bashrc

  fi

  if [ -f ./.profile ]; then

  . .profile

  fi

  .profile文件如下:

  #!/bin/sh

  LANG=en_US

  SYBASE="/home/sybase"

  SYBASE_ASE="ASE-12_5"

  SYBASE_FTS="FTS-12_5"

  SYBASE_OCS="OCS-12_5"

  SYBASE_SYSAM="SYSAM-1_0"

  LM_LICENSE_FILE="${SYBASE}/SYSAM-1_0/licenses/license.dat"

  #SYBASE_JRE="${SYBASE}/shared-1_0/JRE-1_3"

  #PATH="${SYBASE}/JS-12_5/bin":$PATH

  #PATH="${SYBASE}/RPL-12_5/bin":$PATH

  PATH=.:"${SYBASE}/ASE-12_5/bin:${SYBASE}/ASE-12_5/install:${SYBASE}/OCS-12_5/bin:${SYBASE}/$SYBASE_FTS/bin":$PATH

  LD_LIBRARY_PATH="${SYBASE}/ASE-12_5/lib:${SYBASE}/$SYBASE_FTS/lib:${SYBASE}/$SYBASE_FTS/verity/_ilnx21/bin:${SYBASE}/

  $SYBASE_FTS/verity/_ilnx21/filters:${SYBASE}/SQLRemote/lib:${SYBASE}/OCS-12_5/lib:${SYBASE}/OCS-12_5/lib3p:${SYBASE}/ODBC-

  12_5/lib":$LD_LIBRARY_PATH

  export LANG SYBASE SYBASE_ASE SYBASE_FTS SYBASE_OCS SYBASE_SYSAM LM_LICENSE_FILE PATH LD_LIBRARY_PATH

  2:系统调整

  操作系统共享内存缺省值,对于多数Linux版本为32MB,Adaptive Server最小要64M。检查可用的操作系统的大小:

  #cd /proc

  #ipcs –lm | grep ‘max seg size’

  max seg size (Kbytes) = 32768

  为了彻底改变此共享内存参数的大小,可在/etc/rc.d/rc.local中添加:

  echo ‘512 * 1024 * 1024 | bc > /proc/sys/kernel/shmmax

  或者在/etc/sysctl.conf中添加:

  kernel.shmmax = 67108864

  三、     安装

  #mount –t iso9660 /dev/cdrom /mnt/cdrom

  检查装过的任何sybase相关的rpm包,若有,可用rpm –e 来先删除:

  #rpm –qa | grep Sybase

  sybase默认安装在/opt下,所以可以用如下方式改在/home/sybase下:

  [root@localhost sybInstall]$rpm -ivh –prefix=/home/Sybase sybase-common-12.5-3.i386.rpm \

  > sybase-ase-12.5-3.i386.rpm \

  > sybase-esql-12.5-3.i386.rpm \

  > sybase-openclient-12.5-3.i386.rpm \

  > sybase-chinese-12.5-3.i386.rpm \

  > sybase-efts-12.5-3.i386.rpm \

  > sybase-portuguese-12.5-3.i386.rpm

  我基本上只需用到这些东西,所以只安装了这些。

  四、     安装后任务

  其实,如果在rpm之前没有设置环境变量,可以安装之后通过执行安装目录中的脚本如: . SYBASE.sh(bash)或者 source SYBASE.csh (csh)来正确设置环境变量。

  用sybase用户登陆
  #cd /opt/Sybase-12.5/SYSAM
  #lmgr
  输入相应的注册信息(见认证书)

  此时可以用showserver命令来查看哪些服务器在运行,当然我还没有安装服务器。所以下面使用srvbuild来安装:资源文件从/home/sybase/ /ASE/init/sample_resource_files/srvbuild.adaptive_server.rs拷贝模板来修改,最后的EXB服务器的资源文件EXB.rs如下:

  sybinit.release_directory: /home/sybase

  sybinit.product: sqlsrv

  sqlsrv.server_name: EXB

  sqlsrv.new_config: yes

  sqlsrv.do_add_server: yes

  sqlsrv.network_protocol_list: tcp

  sqlsrv.network_hostname_list: localhost

  sqlsrv.network_port_list: 5000

  sqlsrv.server_page_size: USE_DEFAULT

  sqlsrv.force_buildmaster: no

  sqlsrv.master_device_physical_name: /home/sybase/data/exbsvr/master.dat

  sqlsrv.master_device_size: USE_DEFAULT

  sqlsrv.master_database_size: USE_DEFAULT

  sqlsrv.errorlog: /home/sybase/data/exbsvr/exbsvr.log

  sqlsrv.do_upgrade: no

  sqlsrv.sybsystemprocs_device_physical_name: /home/sybase/data/exbsvr/systemprocs.dat

  sqlsrv.sybsystemprocs_device_size: USE_DEFAULT

  sqlsrv.sybsystemprocs_database_size: USE_DEFAULT

  sqlsrv.sybsystemdb_device_physical_name: /home/sybase/data/exbsvr/systemdb.dat

  sqlsrv.sybsystemdb_device_size: USE_DEFAULT

  sqlsrv.sybsystemdb_database_size: USE_DEFAULT

  因为我没有为它配置一个Backup Server (我只是用来练习而矣) 所以把最后一行sqlsrv.default_backup_server: PUT_YOUR_BACKUP_SERVER_NAME_HERE给删掉了,当然在执行之前先要在/home/sybase下创建data和exbsvr文件夹:

  #$SYBASE$SYBASE_ASE/bin/srvbuildres -r EXB.rs

  #$SYBASE$SYBASE_ASE/install/startserver –f RUN_EXB

  来启动EXB服务器,可以通过:

  #isql –Usa –P –SEXB

  来测试是否成功。
不错学习了