旧 Microsoft Access 数据的新生 (1)
[ 来源:互网络 | 更新日期:2007-09-02 21:17:52 | 浏览次数:12061]
简介:sourceforge
同样的情况也发生在数据库上。 一个小公司可能觉得将信息存储在一个 PC 数据库中就足够了,但在该迁移信息时将发生什么? 我们可能很苦恼要丢掉有价值的信息,但的确常常扔掉这些信息。 不过,当时可能看起来不是非常主要并被丢弃的信息,有时可能会需要。
我最近就遇到这样一个问题。 我工作的一个社区机构有一个基于 PC 的应用程序,它带有一个相当大的 Microsoft Access 格式的会员数据库。 已经编写了一个来自第三方的用户程序来与该数据库一起工作,但随后许可过期了,再没有方法来获取该软件的更新。 碰巧,突然又非常需要这些信息。 我们备份了旧的数据库,并将之存储在一个 Linux 系统上。 在新的开放源代码世界中,为我们提供了许多强大的数据库(如 Linux 上的 Oracle 数据库)。 一种选择是购买一份 Microsoft Access 并创建一个应用程序,但这将把我们限制在同一个特定模型中,而这本来就已经使我们陷于困境。 此外,公司希望能够从一个安全的服务器远程访问这些数据。
再次依赖 Microsoft 不是我们希望的选择。 Linux 将作为这个新的数据库服务器的基础,并且它将运行一个行业标准的 SQL 数据库。 因此,如果我们着手取出限制在旧的 MDB 文件中的数据 ? 而不依赖于安装带新的 Access 许可的 Windows 服务器(这样将再次受限于一个单体系结构解决方案),那将如何?
到处寻找解决困境的解决方案,我来到了 Brian Burns 的网站,并知道了他的 mdbtools 程序包,该程序包是命令行工具的一个集合还有一个 GUI,它的唯一的目的是提供从 Access 数据库中取出信息方法。
获取和安装 mdbtools
您需要做的第一件事是获取一份 mdbtools 程序包。 转至 http://mdbtools.sourceforge.net/,您将找到源代码和适用于几种基于 RPM 的版本的 RPM 程序包。 从源代码进行编译非常简单,包括提取到构建 5 个步骤。
tar -xzvf mdbtools-0.5.tar.gz
cd mdbtools-0.5
./configure
make
su -c "make install"
还可能通过下载和从 CVS 进行构建获得最新和最好的程序包。 这并不像它听起来那么复杂。 从连接并匿名登录 CVS 服务器开始。
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/mdbtools login
下一个步骤是查看 mdbtools 程序包:
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/mdbtools co mdbtools
注意前面的每一条命令都是完整的一行。 在输入上面的命令之后,当下载进行时,您将看到一个包含该版本中的各种文件的列表在屏幕上逐行显示。 当下载完成时,转移到下载目录(名称为 mdbtools)并执行以下命令。
./autogen.sh --enable-sql --with-unixodbc=/usr/local
make:
su -c "make install"
对 mdbtools 进行一些研究
mdbtools 程序包自带了一系列命令行工具以及一个 GUI,用于从 mdb 文件中处理和提取数据。 我将马上说明这个 GUI,但首先我想向您介绍一些命令行工具。 这些工具中最基础的是 mdb-ver,您可以用它来识别您要处理的 mdb 文件的类型。
$ mdb-ver members.mdb
JET3
这种情况下的结果是 "JET3",它告诉我我的社区会员文件


您的位置:
