📄 1690.html
字号:
<input type=radio value=content name=type>内容
<input type=image src="images/button_go.gif" tppabs="http://www.linuxhero.com/docs/images/button_go.gif" border=0 name=image2>
</font></div>
</td>
</tr>
<tr>
<td noWrap>
<div align="center">
<input maxlength=100 size=30 name=keyword2>
</div>
</td>
</tr></tbody>
</table>
</form>
</TD>
<TD rowSpan=2><IMG src="images/header_r1_c7.gif" tppabs="http://www.linuxhero.com/docs/images/header_r1_c7.gif" width=26 border=0 name=header_r1_c7></TD>
<TD><IMG height=83 src="images/spacer.gif" tppabs="http://www.linuxhero.com/docs/images/spacer.gif" width=1 border=0></TD></TR>
<TR>
<TD background="images/bgline.gif" tppabs="http://www.linuxhero.com/docs/images/bgline.gif"><IMG height=22
src="images/header_r2_c1.gif" tppabs="http://www.linuxhero.com/docs/images/header_r2_c1.gif" width=296 border=0
name=header_r2_c1></TD>
<TD background="images/bgline.gif" tppabs="http://www.linuxhero.com/docs/images/bgline.gif" colSpan=5>
<DIV align=right><FONT class=normalfont>当前位置:
<A href="index.html" tppabs="http://www.linuxhero.com/docs/index.html">本站首页</A>
<font color="#FF6699">>></font>
<A href="type26.html" tppabs="http://www.linuxhero.com/docs/type26.html">其他服务</A> | <A href="copyright.html" tppabs="http://www.linuxhero.com/docs/copyright.html">版权说明</A></font></DIV>
</TD>
<TD><IMG height=22 src="images/spacer.gif" tppabs="http://www.linuxhero.com/docs/images/spacer.gif" width=1
border=0></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=10 cellPadding=0 width="100%" bgColor=#ffffff
border=0>
<TR>
<TD>
<TABLE cellSpacing=0 cellPadding=3 width="100%" border=0>
<TR>
<TD vAlign=top align=middle width="60%">
<TABLE cellSpacing=0 cellPadding=0 width="100%"
background="images/back.gif" tppabs="http://www.linuxhero.com/docs/images/back.gif" border=0>
<TBODY>
<TR>
<TD vAlign=top width="80%">
<DIV align=center>
<FORM action="search.html" tppabs="http://www.linuxhero.com/docs/search.html" method=get>
</FORM>
<TABLE cellSpacing=0 cellPadding=0 width="95%"
border=0><TBODY>
<TR>
<TD background="images/bgi.gif" tppabs="http://www.linuxhero.com/docs/images/bgi.gif"
height=30></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=3 width="95%"
align=center border=0>
<TBODY>
<TR>
<TD>
<TABLE cellSpacing=0 cellPadding=3 width="100%"
border=0>
<TBODY>
<TR>
<TD vAlign=top>
<p><FONT class=normalfont><B><font color=blue>在Linux下的FireBird数据库</font></B></FONT><BR><FONT class=smallfont color=#ff9900>2004-04-23 15:18 pm</FONT><BR><FONT class=normalfont>作者:葛小明<br>来自:Linux知识宝库<br>联系方式:无名<br><br> 2000年7月,Borland(即现在的Inprise)公司公布了其数据库产品Interbase的源代码。Firebird数据库就是从该数据库中派生出来的。当时,Interbase是与客户/服务器版本的Delphi产品捆绑在一些销售的。现在,Interbase已经变成了一只开放源码中的“火鸟”。<br>
<br>
为什么要使用Firebird?<br>
<br>
也许有人会问,开放源码的数据库已经够多了,还需要其它的数据库吗?笔者认为,对于小型企业用户而言,现在的开放源码数据库有两点不足:要么太大(如 MySQL、PostgreSQL);要么太小,并且缺乏功能和文档(如HypersonicSQL和McKoi)。在很多应用环境中,用户需要有一个大小适中且功能齐备的数据库。<br>
<br>
Firebird相对来说比较小,其RPM版本只有2.6MB。这使其可以称得上是理想的“嵌入式数据库”,可用于与其它应用程序服务器和应用程序捆绑。Firebird具有大部分成熟数据库所具有的功能,比如支持存储过程、SQL兼容等。如果用户有使用DB2或PostgreSQL的经验,就会发现Firebird与它们的语法非常相似,数据类型和数据处理方式也很类似。<br>
<br>
Firebird的设计思想是小型、快速和最小化的管理。这对于需要一个数据库用于存储数据,但又不想花太多时间来调整数据性能的开发人员很适用。实际上在很多情况下,我们并不需要存储程序或复杂的表之间的关联。这时会发现Firebird在大小和功能之间找到了一个理想的平衡点。<br>
<br>
安装Firebird<br>
<br>
我们可以从http://firebird.sourceforge.net/index.php下载Firebird,如图1所示:<br>
<br>
<br>
<br>
图1 极富个性的Firebird主页<br>
<br>
现在有两个版本的Firebird服务器软件可供下载,分别是Firebird Super Server和Firebird Classic Server。简单来说,二者的区别在于设计的方法不同。Super Server使用线程同时为多个客户连接提供服务,而Classic Server使用的则是Interbase的方法,采用为每个连接提供一个独立服务器进程的方式。如果想对二者的区别有更多的了解,可查看http://www.ibphoenix.com/main.nfs?a= ibphoenix&page=ibp_ss_vs_classic。对于“嵌入式数据库”的用户,这两个版本之间没有太大的区别。从理论上讲,如果应用程序的用户很多,那么Super Server将是一个较好的选择。下面,笔者将以Super Server为例进行介绍(本例中下载安装的文件是FirebirdSS-1.0.2.908-1.i386.rpm)。该数据库只有2.5MB,并且对系统的要求也很低。事实上,只要硬件系统可以运行Linux,就完全可以运行这个数据库。<br>
<br>
本文中安装使用该数据库的环境是Red Hat 8.0。下面介绍安装过程。<br>
<br>
首先执行以下命令:<br>
<br>
# echo localhost.localdomain >>/etc/hosts.equiv<br>
<br>
<br>
<br>
该命令将把localhost添加至可识别的服务器列表之中。切换至下载文件所在目录,运行下命令:<br>
<br>
# rpm -ivh FirebirdSS-1.0.2.908-1.i386.rpm<br>
<br>
<br>
<br>
安装完成后将在/etc/init.d目录下创建一个启动脚本,该脚本在服务器启动时会自动启动Firebird。如果安装过程中遇到错误,请检查是否安装了ncurses4(5.0以上版本)和glibc(2.2以上版本),检查方法如下:<br>
<br>
# rpm -qa |grep ncurses<br>
ncurses-devel-5.2-28<br>
ncurses-5.2-28<br>
# rpm -qa |grep glibc<br>
glibc-2.2.93-5<br>
glibc-devel-2.2.93-5<br>
glibc-kernheaders-2.4-7.20<br>
glibc-common-2.2.93-5<br>
<br>
<br>
<br>
一般来说,缺省安装的Linux系统已经安装了ncurses4和glibc,因此要注意查看两个软件包的版本是否符合要求。<br>
<br>
Firebird还会在/opt目录下创建一个interbase目录,并且把可执行文件放在此处。我们需要让该数据库在全系统内可用,为此要编辑/etc/profile,并插入以下行:<br>
<br>
export INTERBASE_HOME=/opt/interbase<br>
export PATH=$PATH:$INTERBASE_HOME/bin<br>
<br>
<br>
<br>
保存文件并重新启动系统,检查Firebird是否正确启动。<br>
<br>
使用系统<br>
<br>
缺省的系统管理员账号的用户名是SYSDBA,缺省密码是masterkey。在使用过程中,笔者发现系统对用户名不区分大小写。用户可使用该账号来创建其它的用户。可用的系统管理工具有:<br>
<br>
◆ gsec<br>
<br>
这是一个安全的系统程序,可以使用命令行的方式来创建、修改和删除数据库用户、改变密码等。必须以SYSDBA来运行gsec,以root身份调用并执行以下命令:<br>
<br>
$ gsec -user sysdba -password masterkey<br>
<br>
<br>
<br>
将会出现一个GSEC>提示符,可以使用display命令显示目前的用户,如下所示:<br>
<br>
GSEC> display<br>
user name uid gid full name<br>
-----------------------------------<br>
SYSDBA 0 0<br>
<br>
<br>
<br>
缺省的密码不安全,建议更改SYSDBA的密码。可使用以下命令来更改密码:<br>
<br>
GSEC> modify SYSDBA -pw newpassword<br>
<br>
<br>
<br>
命令中的newpassword即新的密码。密码最好使用数字和字母的组合,并且经常更改。<br>
<br>
◆ isql<br>
<br>
这是一个交互式SQL工具,类似于Oracle的SQL*Plus和Postgresql的psql命令。可以使用它来测试和运行SQL查询。Firebird自带一个名为EMPLOYEE的数据库实例,可以使用其测试SQL命令,代码如下:<br>
<br>
# cd /opt/interbase/bin<br>
# ./isql /opt/interbase/examples/employee.gdb<br>
Database: /opt/interbase/examples/employee.gdb<br>
SQL><br>
<br>
<br>
<br>
这将会连接到EMPLOYEE数据库并显示SQL>提示符。可以此处输入SQL命令进行查询(注意每行命令后的“;”号)。此外,由于一些与数据库相关的系统也会安装一个名为isql的工具,所以一定要切换到“/opt/interbase/bin”目录下运行isql工具。现在在SQL> 提示符下输入以下命令:<br>
<br>
SQL> SELECT emp_no, full_name, job_code, job_country FROM employee;<br>
<br>
<br>
<br>
将会显示以下内容:<br>
<br>
EMP_NO FULL_NAME JOB_CODE JOB_COUNTRY<br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -