Linux上Sybase ASE11.9.2的安装、配置与使用
【IT168 技术文档】
在开篇之前,先讲题外话,说一说我为什么选择Linux+Sybase,兴许大家会有些共鸣。 我不是计算机科班出身,也不是IT业中人,只是个电脑爱好者,玩游戏,装程序,上网瞎逛,DOS,Win31,Win95,WinNT,样样都捣鼓一下。虽说也学了一些杂七杂八的东西,但看着家里先后花了近两万块捧回来的老中青三台电脑(从486、Pentium到赛扬)一天天地贬值,到如今连三千块也不值,心里不由想到该学一些有用的“本领”了,也算是对得起自己的“巨额”投资。
学什么好呢?数据库容易入门,用途又广,网络社会又来了,就学数据库在网络上的应用吧。于是我就选择了Visual Foxpro开发前端客户程序,后台使用SQL数据库管理系统这种流行的客户机/服务器模式来学。SQL数据库有很多,选哪个厂家,什么平台呢?开始我想学WinNT+MS SQL SERVER,挺流行的,参考书又多,可是哪两个软件价格惊人,虽然有D版,但版权管得越来越严,咱还是用正版软件吧——免费操作系统就用Linux,SQL数据库就选Sybase了。为什么呢?1、Sybase是世界著名的数据库厂商,对Linux很支持,Sybase ASE for Linux就推出了多个版本,其网站产品下载、技术手册、疑难解答挺齐全的,遇上问题容易找到解决办法。2、Sybase ASE与MS SQL SERVER是近亲,MS SQL SERVER的早期版本就是Sybase公司为微软公司开发的。两者体系相近,管理方式、命令、函数、工具差不多,你看一看两家的技术文档就知道了(我曾经买了一套MS SQL SERVER 6.5的技术手册)。学会了Sybase ASE,转头去学MS SQL SERVER,应该比较容易上手吧。
对于我来说,Sybase ASE和Linux都是刚入门,很多地方还是一知半解、迷迷糊糊,主要靠自己去摸索,去走出一条路来。文中讲的是我的学习收获,不是标准答案,其中错误肯定不少,请大家指正。下面就讲讲我学Sybase ASE for Linux的过程,仅供参考。
一、我学Sybase ASE for Linux用到的资源
(一)软件
1、Sybase Adaptive Server Enterprise 11.9.2(以下称ASE11.9.2)的RPM包,共7个文件:
(1)sybase-ase-11.9.2-3.i386.rpm
(2)sybase-chinese-11.9.2-3.i386.rpm
(3)sybase-common-11.9.2-3.i386.rpm
(4)sybase-doc-11_9_2-1_i386.rpm
(5)sybase-monserver-11.9.2-3.i386.rpm
(6)sybase-openclient-11.1.1-3.i386.rpm
(7)sybase-sqlremote-6.0.2-1.i386.rpm
我是从Sybase公司的网站上面下载的,需要注册一下才能下载。网址是:http://www.sybase.com
2、ASE11.9.2的补丁,共两个文件:
(1)EBF9820.tgz——补丁程序
(2)EBF9820.ltr——文档
我是从Sybase中国公司的网站上面下载的,网址是: http://www.sybase.com.cn
3、Windows平台的ASE管理工具
(1)asentlnx.exe。这是从Sybase公司的网站下载的。安装后有如下工具:
①Sybase Central——管理ASE数据库的图形界面工具
②SQL Modeler——强大的客户/服务器应用程序设计工具(可惜我不会用!)
③Dsedit——设置客户端接口文件(sql.ini)的图形界面工具
④OC OS Config Utility——设置客户端机器的环境变量、网络驱动程序等的工具
⑤Sybase System11 ODBC驱动程序
(2)sybase11.exe。这是我从http://www.linuxbyte.net网站下载的。安装后有如下工具:
①Sybase SQL Server Manager——管理ASE数据库的图形界面工具
②Sybase Monitor Client——监控SQL Server的图形界面工具
③SQLEDIT——设置客户端接口文件(sql.ini)的图形界面工具
④SYBPING——测试客户端与SQL Server的连通情况的图形界面工具
⑤WISQL32——执行SQL查询的图形界面工具
Sybase SQL Server Manager和WISQL32在我的系统中执行有些小问题,不知何故。
4、图形界面的SQL查询工具
(1)WinSQL Lite 3.8。这是Windows平台上的软件,推荐使用,是免费版,可在http://www.indus-soft.com/winsql下载,需要在网站上注册,取得一个注册码。WinSQL还有一个功能更强大的专业版,但购买一个单用户许可证要149美金。
(2)WISQL32。上面已讲过。
(3)sybquery-0.2.0.tar.gz。这是X-Windows上的软件。可在http://www.linuxbyte.net网站下载。
(4)jisql。这是Sybase公司开发的基于Java的图形界面的SQL查询工具,可在Windows平台和Linux平台运行。可惜我一直没能用起来。
5、Ribo工具。这是Sybase公司开发的基于Java的图形界面工具,用来捕获和显示使用TDS表格式数据流协议的客户端和服务器之间传递的数据,可在Windows平台和Linux平台运行。我不懂怎么用。
6、Windows平台的终端工具。我选用NetTerm4.2登录Linux,命令可复制、粘贴,可回卷屏幕翻查,方便多了。可在华军软件网站(http://www.newhua.com)下载。
(二)技术文档
1、英文文档:在/opt/sybase-11.9.2/doc/PDF下面有三十个文档(其中两个重复):
(1)aserb.pdf——Linux、Intel平台的Sybase Adaptive Server Enterprise 11.9.2版本公告
(2)ocsrb.pdf——Linux、Intel平台的Open Client及Server产品(11.1.1版)版本公告
(3)asem1192.pdf——Sybase Adaptive Server Enterprise Monitor 11.9.2版本公告
(4)asefun92.pdf——Sybase Adaptive Server Enterprise 11.9.2新功能
(5)whatsup.pdf——Sybase ASE的新特点
(6)uxinstall.pdf——Linux、Intel平台的Sybase ASE安装指南
(7)aseuxcfg.pdf——配置Unix平台的Adaptive Server Enterprise
(8)u_config.pdf——Unix平台的Open Client与Server配置指南
(9)sag.pdf——Sybase ASE系统管理指南
(10)perform.pdf——Sybase ASE性能优化指南
(11)mngmonas.pdf——Sybase ASE的管理与监控
(12)utprogux.pdf——Sybase ASE的Unix工具组
(13)sqlref_1.pdf——Sybase ASE参考手册(卷1:命令与函数)
(14)sqlref_2.pdf——Sybase ASE参考手册(卷2:存储过程)
(15)sqlref_3.pdf——Sybase ASE参考手册(卷3:数据类型与系统表)
(16)svrtsg1.pdf——Sybase ASE故障解除及错误信息手册(卷1)
(17)svrtsg2.pdf——Sybase ASE故障解除及错误信息手册(卷2)
(18)svrtsg3.pdf——Sybase ASE故障解除及错误信息手册(卷3)
(19)navigate.pdf——Sybase ASE任务导航与命令速查
(20)mg_gde.pdf——迁移到Sybase ASE11.5
(21)sqlug.pdf——Sybase ASE Transact-SQL用户指南
(22)monbook.pdf——Sybase ASE Monitor Server用户指南
(23)histserv.pdf——ASE Monitor Historical Server用户指南
(24)clilib.pdf——Sybase Adaptive Server Monitor的Client Library程序员指南
(25)glossary.pdf——Sybase Adaptive Server Enterprise词汇表
(26)omnintro.pdf——OmniConnect简介
(27)omni_ug.pdf——OmniConnect Component Intergration Services用户指南
(28)connim.pdf、imug.pdf——InfoMaker用户指南
(29)sqlremote.pdf——使用SQL Remote进行数据复制
2、中文文档:在Sybase中国公司网站下载,共6个文档,虽然是关于ASE12的,仍有很大参考价值:
(1)Sybase ASE12中文参考手册(卷1:构件块)
(2)Sybase ASE12中文参考手册(卷2:命令)
(3)Sybase ASE12中文参考手册(卷3:过程)
(4)Sybase ASE12中文参考手册(卷4:表格及手册索引)
(5)使用Adaptive Server分布式事务管理功能
(6)Adaptive Server Enterprise中的Java
(三)网站、论坛、新闻组。当你遇到问题时,它们就是你的救星。
1、网站:首选Sybase公司的网站,资料非常丰富,可就是英文的,真头疼,慢慢看吧。Sybase中国公司的网站上也有一些技术支持。其次是http://www.linuxbyte.net网站,Linux上的数据库软件真不少,技术资料也多,每天要去。还有http://www.edbarlow.com(Sybase应用软件)、http://perso.wanadoo.fr/dbadevil/(Sybase软件、技术资料)、http://www.mbay.net/~mpeppler(一位Sybase专家的主页,有很多关于Sybase的链接,ASE on Linux FAQ)等等。
2、论坛:当然是中国Linux论坛了(http://www.linuxforum.net)。“Linux平台数据库”版一天去好几趟。
3、新闻组:有关Linux上的ASE的新闻组服务器:forums.sybase.com,外国高手很多。
(四)书籍
1、《Sybase数据库速成培训》,鲍永刚、龙冬云编,电子工业出版社出版。该书简明介绍了Sybase数据库的组成、数据库系统管理和T-SQL语言,并用大量例子说明建立和管理数据库的操作过程。此书堪称价廉物美,把它吃透,Sybase就算基本入门了。
2、《SYBASE SQL Server 11参考大全》,R.兰金斯等著,希望图书创作室译,宇航出版社出版。此书翻译得一般,我一般将它当作“百科全书”来翻查。
3、《14天自学教程——SQL》,Bryan Morgan、Jeff Perkins著,邓洪涛、陈越译,清华大学出版社出版,是关系数据库理论和SQL语言的入门书。
二、我安装ASE11.9.2的过程
(一)软硬件要求
Linux上的ASE11.9.2需要Linux核心版本为2.2.5、glibc-2.07-29或以上,使用TCP/IP协议,内存推荐128M以上,磁盘空间需要200M以上。
我最“牛”的机子配置是赛扬300A、192M、10G,就用它来装了ASE11.9.2。先把Redhat7.2装好,主机名是DBSERVER,IP地址是192.168.0.1,在硬盘上划出1G的分区作为ASE11.9.2的数据库存储空间,格式化成ex3文件系统,挂在根目录下的/db。
本来,ASE11.9.2手册中说在正式应用中数据库设备必须使用裸设备(Raw Device),并推荐使用硬盘分区建立数据库设备,强调不能使用操作系统文件,否则系统出现故障后难以恢复(因为操作系统高速缓存不会马上把数据写入磁盘,一旦系统崩溃,内存中的数据丢失,就破坏了数据库的参照完整性)。但据ASE11.9.2的版本公告讲,Linux上的ASE11.9.2不支持裸设备,为保证系统能正常恢复,Linux上的ASE11.9.2使用O_SYNC标志打开数据库设备,以保证数据尽快写入磁盘,但是这样会影响系统的性能。
(二)使用RPM工具把ASE产品解包复制到硬盘中
1、在Linux控制台模式下以root用户登录。
2、装载光盘(我把所有软件刻成一张光盘):
5、卸载光盘。
6、RPM工具在解包时创建了sybase用户和sybase组。此时sybase用户的帐号是锁住的,必须将其解锁并更改密码。然后将/db的读写权限只授予sybase用户。
7、修改系统内存配置。在root用户登录文件中加入以下语句(以bash用户,.bash_profile为例。更改系统内存值为60M):echo "62914560" > /proc/sys/kernel/shmmax
8、重新启动系统。
9、在Linux控制台模式下以sybase用户登录,会自动执行一文件设置环境变量等。在/db下建一目录/sybsystem。
10、如果你使用网络,请配置好网卡。即使你不使用网络,也要在loopback状态下检查网络配置是否正确,方法如下:在主机上用telnet localhost命令登录,不必退出,用同样的命令再登录一次,然后用两次exit命令退出系统。如果执行正常,网络配置就OK了。
(三)在X-Windows中使用srvbuild工具配置ASE产品
1、用sybase用户登录X-Windows,执行sybase安装目录(/opt/sybase-11.9.2)下/bin/srvbuild命令。
2、在srvbuild窗口中,选择要安装Server类型。我把四种Server都选上。
3、给Server命名。我将Adaptive Server命名为TEST,相应地,Backup Server自动命名为TEST_back,Monitor Server命名为TEST_mon,XP Server命名为TEST_XP。点击OK按钮,进入各Server的配置过程。
4、配置Adaptive Server。填写或选择以下内容:
Master device path(主设备路径):/db/sybsystem/master.dat
Master device size(MB)(主设备大小):60
Master database size(MB)(主数据库大小):20
Sybsystemprocs device path(系统存储过程设备路径):/db/sybsystem/systemprocs.dat
Sybsystemprocs device size(MB)(系统存储过程设备大小):60
Sybsystemprocs database size(MB)(系统存储过程数据库大小):60
Error log path(错误日志路径):/opt/sybase-11.9.2/install/TEST.log
Transport type(传输协议类型):tcp
Host name(主机名):192.168.0.1
Port number(监听端口号):4100
点击OK按钮,进入下一配置过程。
5、配置Backup Server。填写或选择以下内容:
Error log path:/opt/sybase-11.9.2/install/TEST_back.log
Tape configuration file:/opt/sybase-11.9.2/backup_tape.cfg
Language:(不填)
Character set:(不填)
Maximum number of network connections:25
Maximum number of server connections:20
Transport type:tcp
Host name:192.168.0.1
Port number:4200
点击OK按钮,进入下一配置过程。
6、配置Monitor Server。填写或选择以下内容:
Maximum number of connections:5
Error log path:/opt/sybase-11.9.2/install/TEST_mon.log
Configuration file path:/opt/sybase-11.9.2/install/TEST_mon.cfg
Share memory directory:/opt/sybase-11.9.2
Transport type:tcp
Host name:192.168.0.1
Port number:4300
点击OK按钮,进入下一配置过程。
7、配置XP Server。填写或选择以下内容:
Transport type:tcp
Host name:192.168.0.1
Port number:4400
点击Build Server按钮,开始创建Server,这时出现一个窗口,你可以看到整个创建过程。如果有显示以下类似信息,表示创建Server成功:
……
Server TEST was successfully created.
Done.
……
8、创建Server成功后,系统就会问你是否将Server本地化(Localize),即是用另外一种语言代替默认的us_english language,以及改变默认的iso_1字符集和Binary索引顺序。我的选择是NO。为什么呢?我曾经把中文(eucgb)设为默认字符集,反而不支持中文大字集,因为eucgb是基于GB2312标准的。我查了Sybase的手册中一些关于本地化的说明,得出的印象是,在ASE中有Unicode转换机制,可以转换来自不同字符集的服务器或客户端的数据。我的应用也证明,使用ASE的默认的语言、字符集、索引顺序来处理中文是可行的。
9、安装成功后要做的几件事。首先在Linux控制台模式下以sybase用户登录。
①确认Server是否在运行。使用$SYBASE/install/下的showserver命令($SYBASE表示sybase的安装目录),应该可看见系统有几个sybase相关进程。或者用$SYBASE/bin/下的isql -Usa -P -STEST命令来登录Server,应该可以看见isql的提示符“1>”,再键入exit就可以退出了。
②设置sa帐户的口令。装好Server后,系统自动建立sa用户,即系统管理员,对整个系统拥有最大的权力,但这时sa的口令是空的,必须马上更改。
③关闭主设备缺省状态。否则用户的数据库会安装在主设备上。
(四)安装语法数据库和示例数据库
先建立一个放置语法数据库和示例数据库的数据库设备,大小为10M,并设置为缺省状态。
1、安装sybsyntax语法数据库。这是通过$SYBASE/scripts/ins_syn_sql这个脚本文件来安装的。但ins_syn_sql需要修改一下,去掉开头用来指定缺省数据库设备的一段语句,加入“create database sybsyntax”一句(具体请参考《Linux、Intel平台的Sybase ASE安装指南》7-14页、7-15页)。然后执行以下命令:
据Sybase公司讲,EBF9820.tgz修正了ASE11.9.2已知的一些问题,建议尽快安装。
1、先关闭Server。
退出root用户登录。
3、以sybase用户登录,启动Adaptive Server。
在开篇之前,先讲题外话,说一说我为什么选择Linux+Sybase,兴许大家会有些共鸣。 我不是计算机科班出身,也不是IT业中人,只是个电脑爱好者,玩游戏,装程序,上网瞎逛,DOS,Win31,Win95,WinNT,样样都捣鼓一下。虽说也学了一些杂七杂八的东西,但看着家里先后花了近两万块捧回来的老中青三台电脑(从486、Pentium到赛扬)一天天地贬值,到如今连三千块也不值,心里不由想到该学一些有用的“本领”了,也算是对得起自己的“巨额”投资。
学什么好呢?数据库容易入门,用途又广,网络社会又来了,就学数据库在网络上的应用吧。于是我就选择了Visual Foxpro开发前端客户程序,后台使用SQL数据库管理系统这种流行的客户机/服务器模式来学。SQL数据库有很多,选哪个厂家,什么平台呢?开始我想学WinNT+MS SQL SERVER,挺流行的,参考书又多,可是哪两个软件价格惊人,虽然有D版,但版权管得越来越严,咱还是用正版软件吧——免费操作系统就用Linux,SQL数据库就选Sybase了。为什么呢?1、Sybase是世界著名的数据库厂商,对Linux很支持,Sybase ASE for Linux就推出了多个版本,其网站产品下载、技术手册、疑难解答挺齐全的,遇上问题容易找到解决办法。2、Sybase ASE与MS SQL SERVER是近亲,MS SQL SERVER的早期版本就是Sybase公司为微软公司开发的。两者体系相近,管理方式、命令、函数、工具差不多,你看一看两家的技术文档就知道了(我曾经买了一套MS SQL SERVER 6.5的技术手册)。学会了Sybase ASE,转头去学MS SQL SERVER,应该比较容易上手吧。
对于我来说,Sybase ASE和Linux都是刚入门,很多地方还是一知半解、迷迷糊糊,主要靠自己去摸索,去走出一条路来。文中讲的是我的学习收获,不是标准答案,其中错误肯定不少,请大家指正。下面就讲讲我学Sybase ASE for Linux的过程,仅供参考。
一、我学Sybase ASE for Linux用到的资源
(一)软件
1、Sybase Adaptive Server Enterprise 11.9.2(以下称ASE11.9.2)的RPM包,共7个文件:
(1)sybase-ase-11.9.2-3.i386.rpm
(2)sybase-chinese-11.9.2-3.i386.rpm
(3)sybase-common-11.9.2-3.i386.rpm
(4)sybase-doc-11_9_2-1_i386.rpm
(5)sybase-monserver-11.9.2-3.i386.rpm
(6)sybase-openclient-11.1.1-3.i386.rpm
(7)sybase-sqlremote-6.0.2-1.i386.rpm
我是从Sybase公司的网站上面下载的,需要注册一下才能下载。网址是:http://www.sybase.com
2、ASE11.9.2的补丁,共两个文件:
(1)EBF9820.tgz——补丁程序
(2)EBF9820.ltr——文档
我是从Sybase中国公司的网站上面下载的,网址是: http://www.sybase.com.cn
3、Windows平台的ASE管理工具
(1)asentlnx.exe。这是从Sybase公司的网站下载的。安装后有如下工具:
①Sybase Central——管理ASE数据库的图形界面工具
②SQL Modeler——强大的客户/服务器应用程序设计工具(可惜我不会用!)
③Dsedit——设置客户端接口文件(sql.ini)的图形界面工具
④OC OS Config Utility——设置客户端机器的环境变量、网络驱动程序等的工具
⑤Sybase System11 ODBC驱动程序
(2)sybase11.exe。这是我从http://www.linuxbyte.net网站下载的。安装后有如下工具:
①Sybase SQL Server Manager——管理ASE数据库的图形界面工具
②Sybase Monitor Client——监控SQL Server的图形界面工具
③SQLEDIT——设置客户端接口文件(sql.ini)的图形界面工具
④SYBPING——测试客户端与SQL Server的连通情况的图形界面工具
⑤WISQL32——执行SQL查询的图形界面工具
Sybase SQL Server Manager和WISQL32在我的系统中执行有些小问题,不知何故。
4、图形界面的SQL查询工具
(1)WinSQL Lite 3.8。这是Windows平台上的软件,推荐使用,是免费版,可在http://www.indus-soft.com/winsql下载,需要在网站上注册,取得一个注册码。WinSQL还有一个功能更强大的专业版,但购买一个单用户许可证要149美金。
(2)WISQL32。上面已讲过。
(3)sybquery-0.2.0.tar.gz。这是X-Windows上的软件。可在http://www.linuxbyte.net网站下载。
(4)jisql。这是Sybase公司开发的基于Java的图形界面的SQL查询工具,可在Windows平台和Linux平台运行。可惜我一直没能用起来。
5、Ribo工具。这是Sybase公司开发的基于Java的图形界面工具,用来捕获和显示使用TDS表格式数据流协议的客户端和服务器之间传递的数据,可在Windows平台和Linux平台运行。我不懂怎么用。
6、Windows平台的终端工具。我选用NetTerm4.2登录Linux,命令可复制、粘贴,可回卷屏幕翻查,方便多了。可在华军软件网站(http://www.newhua.com)下载。
(二)技术文档
1、英文文档:在/opt/sybase-11.9.2/doc/PDF下面有三十个文档(其中两个重复):
(1)aserb.pdf——Linux、Intel平台的Sybase Adaptive Server Enterprise 11.9.2版本公告
(2)ocsrb.pdf——Linux、Intel平台的Open Client及Server产品(11.1.1版)版本公告
(3)asem1192.pdf——Sybase Adaptive Server Enterprise Monitor 11.9.2版本公告
(4)asefun92.pdf——Sybase Adaptive Server Enterprise 11.9.2新功能
(5)whatsup.pdf——Sybase ASE的新特点
(6)uxinstall.pdf——Linux、Intel平台的Sybase ASE安装指南
(7)aseuxcfg.pdf——配置Unix平台的Adaptive Server Enterprise
(8)u_config.pdf——Unix平台的Open Client与Server配置指南
(9)sag.pdf——Sybase ASE系统管理指南
(10)perform.pdf——Sybase ASE性能优化指南
(11)mngmonas.pdf——Sybase ASE的管理与监控
(12)utprogux.pdf——Sybase ASE的Unix工具组
(13)sqlref_1.pdf——Sybase ASE参考手册(卷1:命令与函数)
(14)sqlref_2.pdf——Sybase ASE参考手册(卷2:存储过程)
(15)sqlref_3.pdf——Sybase ASE参考手册(卷3:数据类型与系统表)
(16)svrtsg1.pdf——Sybase ASE故障解除及错误信息手册(卷1)
(17)svrtsg2.pdf——Sybase ASE故障解除及错误信息手册(卷2)
(18)svrtsg3.pdf——Sybase ASE故障解除及错误信息手册(卷3)
(19)navigate.pdf——Sybase ASE任务导航与命令速查
(20)mg_gde.pdf——迁移到Sybase ASE11.5
(21)sqlug.pdf——Sybase ASE Transact-SQL用户指南
(22)monbook.pdf——Sybase ASE Monitor Server用户指南
(23)histserv.pdf——ASE Monitor Historical Server用户指南
(24)clilib.pdf——Sybase Adaptive Server Monitor的Client Library程序员指南
(25)glossary.pdf——Sybase Adaptive Server Enterprise词汇表
(26)omnintro.pdf——OmniConnect简介
(27)omni_ug.pdf——OmniConnect Component Intergration Services用户指南
(28)connim.pdf、imug.pdf——InfoMaker用户指南
(29)sqlremote.pdf——使用SQL Remote进行数据复制
2、中文文档:在Sybase中国公司网站下载,共6个文档,虽然是关于ASE12的,仍有很大参考价值:
(1)Sybase ASE12中文参考手册(卷1:构件块)
(2)Sybase ASE12中文参考手册(卷2:命令)
(3)Sybase ASE12中文参考手册(卷3:过程)
(4)Sybase ASE12中文参考手册(卷4:表格及手册索引)
(5)使用Adaptive Server分布式事务管理功能
(6)Adaptive Server Enterprise中的Java
(三)网站、论坛、新闻组。当你遇到问题时,它们就是你的救星。
1、网站:首选Sybase公司的网站,资料非常丰富,可就是英文的,真头疼,慢慢看吧。Sybase中国公司的网站上也有一些技术支持。其次是http://www.linuxbyte.net网站,Linux上的数据库软件真不少,技术资料也多,每天要去。还有http://www.edbarlow.com(Sybase应用软件)、http://perso.wanadoo.fr/dbadevil/(Sybase软件、技术资料)、http://www.mbay.net/~mpeppler(一位Sybase专家的主页,有很多关于Sybase的链接,ASE on Linux FAQ)等等。
2、论坛:当然是中国Linux论坛了(http://www.linuxforum.net)。“Linux平台数据库”版一天去好几趟。
3、新闻组:有关Linux上的ASE的新闻组服务器:forums.sybase.com,外国高手很多。
(四)书籍
1、《Sybase数据库速成培训》,鲍永刚、龙冬云编,电子工业出版社出版。该书简明介绍了Sybase数据库的组成、数据库系统管理和T-SQL语言,并用大量例子说明建立和管理数据库的操作过程。此书堪称价廉物美,把它吃透,Sybase就算基本入门了。
2、《SYBASE SQL Server 11参考大全》,R.兰金斯等著,希望图书创作室译,宇航出版社出版。此书翻译得一般,我一般将它当作“百科全书”来翻查。
3、《14天自学教程——SQL》,Bryan Morgan、Jeff Perkins著,邓洪涛、陈越译,清华大学出版社出版,是关系数据库理论和SQL语言的入门书。
二、我安装ASE11.9.2的过程
(一)软硬件要求
Linux上的ASE11.9.2需要Linux核心版本为2.2.5、glibc-2.07-29或以上,使用TCP/IP协议,内存推荐128M以上,磁盘空间需要200M以上。
我最“牛”的机子配置是赛扬300A、192M、10G,就用它来装了ASE11.9.2。先把Redhat7.2装好,主机名是DBSERVER,IP地址是192.168.0.1,在硬盘上划出1G的分区作为ASE11.9.2的数据库存储空间,格式化成ex3文件系统,挂在根目录下的/db。
本来,ASE11.9.2手册中说在正式应用中数据库设备必须使用裸设备(Raw Device),并推荐使用硬盘分区建立数据库设备,强调不能使用操作系统文件,否则系统出现故障后难以恢复(因为操作系统高速缓存不会马上把数据写入磁盘,一旦系统崩溃,内存中的数据丢失,就破坏了数据库的参照完整性)。但据ASE11.9.2的版本公告讲,Linux上的ASE11.9.2不支持裸设备,为保证系统能正常恢复,Linux上的ASE11.9.2使用O_SYNC标志打开数据库设备,以保证数据尽快写入磁盘,但是这样会影响系统的性能。
(二)使用RPM工具把ASE产品解包复制到硬盘中
1、在Linux控制台模式下以root用户登录。
2、装载光盘(我把所有软件刻成一张光盘):
3、首先解包sybase-common-11.9.2-3.i386.rpm。#mount -t iso9660 /dev/cdrom /mnt/cdrom
4、解包复制其他产品。#rpm -hiv /mnt/cdrom/sybase-common-11.9.2-3.i386.rpm
#rpm -hiv /mnt/cdrom/sybase-ase-11.9.2-3.i386.rpm
#rpm -hiv /mnt/cdrom/sybase-chinese-11.9.2-3.i386.rpm
#rpm -hiv /mnt/cdrom/sybase-openclient-11.1.1-3.i386.rpm
#rpm -hiv /mnt/cdrom/sybase-doc-11_9_2-1_i386.rpm
#rpm -hiv /mnt/cdrom/sybase-monserver-11.9.2-3.i386.rpm
#rpm -hiv /mnt/cdrom/sybase-sqlremote-6.0.2-1.i386.rpm
5、卸载光盘。
#umount /dev/cdrom
6、RPM工具在解包时创建了sybase用户和sybase组。此时sybase用户的帐号是锁住的,必须将其解锁并更改密码。然后将/db的读写权限只授予sybase用户。
7、修改系统内存配置。在root用户登录文件中加入以下语句(以bash用户,.bash_profile为例。更改系统内存值为60M):echo "62914560" > /proc/sys/kernel/shmmax
8、重新启动系统。
9、在Linux控制台模式下以sybase用户登录,会自动执行一文件设置环境变量等。在/db下建一目录/sybsystem。
10、如果你使用网络,请配置好网卡。即使你不使用网络,也要在loopback状态下检查网络配置是否正确,方法如下:在主机上用telnet localhost命令登录,不必退出,用同样的命令再登录一次,然后用两次exit命令退出系统。如果执行正常,网络配置就OK了。
(三)在X-Windows中使用srvbuild工具配置ASE产品
1、用sybase用户登录X-Windows,执行sybase安装目录(/opt/sybase-11.9.2)下/bin/srvbuild命令。
2、在srvbuild窗口中,选择要安装Server类型。我把四种Server都选上。
3、给Server命名。我将Adaptive Server命名为TEST,相应地,Backup Server自动命名为TEST_back,Monitor Server命名为TEST_mon,XP Server命名为TEST_XP。点击OK按钮,进入各Server的配置过程。
4、配置Adaptive Server。填写或选择以下内容:
Master device path(主设备路径):/db/sybsystem/master.dat
Master device size(MB)(主设备大小):60
Master database size(MB)(主数据库大小):20
Sybsystemprocs device path(系统存储过程设备路径):/db/sybsystem/systemprocs.dat
Sybsystemprocs device size(MB)(系统存储过程设备大小):60
Sybsystemprocs database size(MB)(系统存储过程数据库大小):60
Error log path(错误日志路径):/opt/sybase-11.9.2/install/TEST.log
Transport type(传输协议类型):tcp
Host name(主机名):192.168.0.1
Port number(监听端口号):4100
点击OK按钮,进入下一配置过程。
5、配置Backup Server。填写或选择以下内容:
Error log path:/opt/sybase-11.9.2/install/TEST_back.log
Tape configuration file:/opt/sybase-11.9.2/backup_tape.cfg
Language:(不填)
Character set:(不填)
Maximum number of network connections:25
Maximum number of server connections:20
Transport type:tcp
Host name:192.168.0.1
Port number:4200
点击OK按钮,进入下一配置过程。
6、配置Monitor Server。填写或选择以下内容:
Maximum number of connections:5
Error log path:/opt/sybase-11.9.2/install/TEST_mon.log
Configuration file path:/opt/sybase-11.9.2/install/TEST_mon.cfg
Share memory directory:/opt/sybase-11.9.2
Transport type:tcp
Host name:192.168.0.1
Port number:4300
点击OK按钮,进入下一配置过程。
7、配置XP Server。填写或选择以下内容:
Transport type:tcp
Host name:192.168.0.1
Port number:4400
点击Build Server按钮,开始创建Server,这时出现一个窗口,你可以看到整个创建过程。如果有显示以下类似信息,表示创建Server成功:
……
Server TEST was successfully created.
Done.
……
8、创建Server成功后,系统就会问你是否将Server本地化(Localize),即是用另外一种语言代替默认的us_english language,以及改变默认的iso_1字符集和Binary索引顺序。我的选择是NO。为什么呢?我曾经把中文(eucgb)设为默认字符集,反而不支持中文大字集,因为eucgb是基于GB2312标准的。我查了Sybase的手册中一些关于本地化的说明,得出的印象是,在ASE中有Unicode转换机制,可以转换来自不同字符集的服务器或客户端的数据。我的应用也证明,使用ASE的默认的语言、字符集、索引顺序来处理中文是可行的。
9、安装成功后要做的几件事。首先在Linux控制台模式下以sybase用户登录。
①确认Server是否在运行。使用$SYBASE/install/下的showserver命令($SYBASE表示sybase的安装目录),应该可看见系统有几个sybase相关进程。或者用$SYBASE/bin/下的isql -Usa -P -STEST命令来登录Server,应该可以看见isql的提示符“1>”,再键入exit就可以退出了。
②设置sa帐户的口令。装好Server后,系统自动建立sa用户,即系统管理员,对整个系统拥有最大的权力,但这时sa的口令是空的,必须马上更改。
$SYBASE/bin/isql -Usa -P -STEST
1>sp_password null,新口令
2>go
③关闭主设备缺省状态。否则用户的数据库会安装在主设备上。
$SYBASE/bin/isql -Usa -STEST
Password:(输入新口令)
1>sp_diskdefault master,defaultoff
2>go
(四)安装语法数据库和示例数据库
先建立一个放置语法数据库和示例数据库的数据库设备,大小为10M,并设置为缺省状态。
$SYBASE/bin/isql -Usa -STEST
Password:(输入口令)
1>disk init name = "sybsyntaxdev",
2>physname = "/db/sybsystem/sybsyntaxdev.dat",
3>vdevno = 2,size = 5120
4>go
1>sp_diskdefault sybsyntaxdev,defaulton
2>go
1、安装sybsyntax语法数据库。这是通过$SYBASE/scripts/ins_syn_sql这个脚本文件来安装的。但ins_syn_sql需要修改一下,去掉开头用来指定缺省数据库设备的一段语句,加入“create database sybsyntax”一句(具体请参考《Linux、Intel平台的Sybase ASE安装指南》7-14页、7-15页)。然后执行以下命令:
语法数据库安装好后,可用系统存储过程sp_syntax查询Transact-SQL语言、系统存储过程、Sybase工具的使用帮助。例如要查询select命令的用法:$SYBASE/bin/isql -Usa -P口令 -STEST < $SYBASE/scripts/ins_syn_sql
2、安装pubs2、pubs3示例数据库。技术文档中的例子就是来自示例数据库。执行以下命令:$SYBASE/bin/isql -Usa -STEST
Password:(输入口令)
1>sp_syntax "select"
2>go
(五)安装ASE补丁$SYBASE/bin/isql -Usa -P口令 -STEST < $SYBASE/scripts/installpubs2
$SYBASE/bin/isql -Usa -P口令 -STEST < $SYBASE/scripts/installpubs3
据Sybase公司讲,EBF9820.tgz修正了ASE11.9.2已知的一些问题,建议尽快安装。
1、先关闭Server。
2、在Linux控制台模式下以root用户登录。$SYBASE/bin/isql -Usa -STEST
Password:(输入口令)
1>shutdown SYB_BACKUP &&关闭Backup Server
2>go
1>shutdown &&关闭Adaptive Server
2>go
$SYBASE/bin/isql -Usa -P口令 -STEST_mon
1>sms_shutdown &&关闭Monitor Server
2>go
重新设置sybase用户对$SYBASE的读写权限。#mkdir /tmp/SWR &&建立放置补丁的临时目录
#mount -t iso9660 /dev/cdrom /mnt/cdrom &&装载光盘
#cp /mnt/cdrom/EBF9820.tgz /tmp/SWR &&将补丁复制到临时目录
#cd /tmp/SWR
#gunzip -S .tgz EBF9820.tgz
#tar xvf EBF9820.tar
#rpm -hiv /tmp/SWR/ebf9820/RPMS/sybase-SWR-9820-1.i386.rpm
退出root用户登录。
3、以sybase用户登录,启动Adaptive Server。
$SYBASE/install/startserver -f RUN_TEST
0
相关文章
