数据库安装系列之SYBASE 15 系列安装1.1安装前准备使用root用户登录系统,在命令行提示符#后,输入下列命令创建sybase用户组和用户:输入设置的sybase用户的密码,建议为sybase123。
利用sysctl kernel.shmmax命令查看当前系统的共享内存大小,如果超过250M则不需要进行下面的“设置共享内存”的操作了。
在这里需计算共享内存大小128M(128*1024*1024=134217728),设置共享内存(如果超过250M就不需要设置共享内存)和相关参数:1.2确定sybase的安装目录设置后之后,注销root用户登录,用sybase用户登录图形界面。
在同城清算系统中,sybase软件统一安装在/home/sybase目录下。
无特殊情况,请勿修改此设定,以免引起不必要的错误。
检查确认sybase用户对安装目录具有读、写、执行的权限。
1.3启动安装程序使用sybase用户登录操作系统的图形界面(若发现登录后处于字符界面下,请使用“startx”命令启动图形界面),然后将sybase光盘放入光驱,一般情况下光盘会自动弹出光盘目录文件。
(如果出现root用户都无法执行则用)以root用户运行,linux提示权限不够。
root 用户难道不是最高的吗?如何解决这个问题呢?其实这里面是有原因的,首先我们要这样做: 用#ls -l filename命令看看,如果显示类似如:-rw-rw-rw- 1 root root .... 则表示任何用户都没有可执行权限(即使是root用户). 解决方法:#chmod a+x filename然后直接在图形界面下双击setup进行安装,如下图所示;图 1.3-1 sybase安装文件目录如光盘未自动mount,可用root用户手工mount:#mount –r /dev/cdrom /mnt/切换至安装文件所在目录,执行“./setup”。
或者./setup –console1)执行上述安装程序,必须用sybase用户去执行2)要用sybase用户去装,并且按照目录与/home/sybase分开一种GUI模式,即在图形界面下用“setup”安装;一种是non-GUI模式,即在终端用“setup - console”安装。
因为我是通过远程putty来操作Linux的之后能看到sybase安装向导的欢迎界面,如下图所示(注意:这个过程可能会有比较长的等待时间,具体根据各个机器的性能和光驱性能决定)。
图 1.3-2 安装启动界面图 1.3-3 安装欢迎界面如安装进程长时间停留在查找java虚拟机的状态,请重新启动机器后再次运行安装向导。
1.4确认版权信息选择显示版权信息所使用的语言。
如当前登录所用的语言环境为中文,选择“中华人民共和国(PRC)”。
阅读版权信息后选择“同意”,并按“下一步”按钮继续:图 1.4-1 选择安装协议1.5选择软件安装目录sybase的缺省安装目录是/opt/sybase,改为/home/sybase。
按“下一步”按钮继续:图 1.5-1 选择安装目录如果该目录已经被创建,则系统会询问是否覆盖,点击“是”,即可:图 1.5-2 是否覆盖现有安装目录1.6选择安装类型sybase提供以下几种安装类型供选择:●典型典型安装●完全完全安装●定制自定义安装选择完全安装,并按“下一步”按钮继续:图 1.6-1 选择安装类型1.7软件安装安装向导将提示将要安装的软件组件,在确认无误后按“下一步”按钮继续:图 1.7-1 安装配置信息安装向导显示安装的进度。
所需要的安装时间根据硬件性能的差异有所不同。
图 1.7-2 安装进度完成sybase组件的安装后,安装向导将提示安装结果。
图 1.7-3 安装完成1.8配置服务器直接点击“下一步”图 1.8-1 获取许可Sybase 电子邮件报警机制,选择否图 1.8-12 电子邮件选择产品版本 Developer Edition 下一步图 1.8-13 产品版本在缺省情况下,安装向导会提示是否配置新的数据库服务器图 1.8-14 配置sybase服务器将所有的勾都去除,然后一直点下一步,直到显示如下界面。
图 1.8-21 完成配置按“完成”按钮结束数据库产品的安装,然后按照下面的步骤进行设置:1)切换到root用户下$ su –root2)修改/home/sybase下的SYBASE.sh文件$ vi /home/sybase/SYBASE.sh在该文件的最后加入下列语句注意:等号后的SYBASE是sybase服务器的名称3)将SYBASE.sh复制到/etc/profile.d目录下;4)修改sybase目录的权限请用下面命令增加组权限,其中g表示组,R表示全部;1.9不同操作系统下的配置1)Suse 10系列和RedFlag系列编辑sybase用户的自身配置文件.bashrc,如下:## sybase This starts and stops sybase.## chkconfig: 345 56 50# description: xinetd is a powerful replacement for inetd. \# xinetd has access control mechanisms, extensive \# logging capabilities, the ability to make services \# available based on time, and can place \# limits on the number of servers that can be started, \# among other things.## processname: /usr/sbin/sybase# config: /etc/sysconfig/network# config: /etc/xinetd.conf# pidfile: /var/run/xinetd.pid#Source function library.. /etc/rc.d/export SYBASE=/home/sybaseif [ -n "${SYBASE}" -a -d "${SYBASE}" ]; thenSYBASE_ASE=`basename $SYBASE/ASE-15_0`SYBASE_OCS=`basename $SYBASE/OCS-15_0`PATH="${SYBASE}/${SYBASE_ASE}/bin:/${SYBASE}/${SYBASE_OCS }:/${SYBASE}/${SYBASE_ASE}/install:/${PATH}"export SYBASE SYBASE_ASE SYBASE_OCS PATH# See how we were called.case "$1" instart)echo -n "Starting Sybase ASE ... "( cd ${SYBASE}/${SYBASE_ASE}/install ; \export LANG=en_US; export LD_POINTER_GUARD=0; export LC_ALL=default; \for run_server in RUN_* ; do \su -c "startserver -f ${run_server}" sybase > /dev/null 2>&1; \echo -n "${run_server} " ; \done )echo -n "sybase."touch /var/lock/subsys/sybase;;stop)echo -n "Shuting down Sybase ASE configured servers: "killproc dataserverkillproc backupserver# killproc monserver# Add your own openserver applications.echo;;status)showserver;;restart)$0 stop$0 start;;*)echo "*** Usage: sybase {start|stop|status|restart}"exit 1esacfiexit 01.11sybase下的环境变量设置设置在.bashrc文件中,内容如下:export LC_ALL=defaultexport LANG=en_USexport LD_POINTER_GUARD=0 //RedHat系列操作系统export LD_POINTER_GUARD=1 //suse redflag系列操作系统设置中文#su - sybase -c "charset -Usa -P binary.srt cp936"#su - sybase -c "isql -Usa -P -i cp936.sql"1.12Sybase创建数据库设备脚本如果要执行下列脚本,需要用到sybase用下的srvbuild 命令,仅sybase用户有该命令在文件位置为:/home/Sybase/ASE-15_0/bin下1)ase.rssybinit.release_directory: USE_DEFAULTsybinit.product: sqlsrvsqlsrv.server_name: SYBASEsqlsrv.new_config: yessqlsrv.do_add_server: yeswork_protocol_list: tcpwork_hostname_list: prehostwork_port_list: 5000sqlsrv.server_page_size: 8Ksqlsrv.force_buildmaster: nosqlsrv.master_device_physical_name: /home/sybase/data/master.dat sqlsrv.master_device_size: 240sqlsrv.master_database_size: 80sqlsrv.errorlog: USE_DEFAULTsqlsrv.do_upgrade: nosqlsrv.sybsystemprocs_device_physical_name:/home/sybase/data/sysprocs.datsqlsrv.sybsystemprocs_device_size: 132sqlsrv.sybsystemprocs_database_size: 132sqlsrv.sybsystemdb_device_physical_name: /home/sybase/data/sybsysdb.dat sqlsrv.sybsystemdb_device_size: 2sqlsrv.sybsystemdb_database_size: 2sqlsrv.default_backup_server: SYBASE_BSsqlsrv.addl_cmdline_parameters:2)bak.rssybinit.release_directory: USE_DEFAULTsybinit.product: bsrvbsrv.server_name: SYBASE_BSbsrv.new_config: yesbsrv.do_add_backup_server: yesbsrv.do_upgrade: nowork_protocol_list: tcpwork_hostname_list: prehostwork_port_list: 5001nguage: USE_DEFAULTbsrv.character_set: USE_DEFAULTbsrv.tape_config_file: USE_DEFAULTbsrv.errorlog: USE_DEFAULTsqlsrv.related_sqlsrvr: SYBASEsqlsrv.sa_login: sasqlsrv.sa_password: USE_DEFAULTbsrv.addl_cmdline_parameters:1.13添加中文cp936的sql文件内容cp936.sqluse mastergosp_configure "enable unicode conversions",0gosp_configure "default character set id",171goshutdowngo安装中遇到的问题集结:1)执行srvbuildres –r .rs文件之后,(还有个srvbuild,好像效果差不多) 报srvbuildres: Server SYBASE already exists in the 'interfaces' file删除interface文件(/home/Sybase/interfaces)2)如果出现报错如果是linux则在 sybase安装目录,ASE-12_5/install/下:ASE服务器名.log,备份服务器名.loglinux用vi或more看该日志文件在目录 /home/Sybase/ASE-12_5/install/SYBASE.log3)发现问题 ninit: cannot find host 10.x.x.xvi /etc/hosts10.x.x.x LOCALHOST (没有此条记录,故添加既可)4)如果出现一些其他的问题,先确认是否是因为。