Previous Section
 < Day Day Up > 
Next Section


Database Management Systems

Database software can be generally organized into three categories: SQL, Xbase, and desktop databases. SQL-based databases are professional-level relational databases whose files are managed by a central database server program. Applications that use the database do not access the files directly. Instead, they send requests to the database server, which then performs the actual access. SQL is the query language used on these industrial-strength databases. Red Hat Linux includes both MySQL and PostgreSQL databases. Both are open source projects freely available for your use. Table 11-6 lists DBMSs currently available for Linux.

The Xbase language is an enhanced version of the dBase programming language used to access database files whose formats were originally developed for dBase on the PC. With Xbase, database management systems can directly access the database files. Xbase is used mainly for smaller personal databases, with database files often located on a user's own system.

SQL Databases (RDMS)

SQL databases are relational database management systems (RDMSs) designed for extensive database management tasks. Many of the major SQL databases now have Linux versions, including Oracle, Informix, Sybase, and IBM (but not, of course, Microsoft). These are commercial and professional database management systems of the highest order. Linux has proved itself capable of supporting complex and demanding database management tasks. In addition, many free SQL databases are available for Linux that offer much the same functionality. Most commercial databases also provide free personal versions, as do Oracle, Adabas D, and MySQL.

Table 11-6: Database Management Systems for Linux

System

Site

PostgreSQL

The PostgreSQL database: www.postgresql.org

MySQL

MySQL database: www.mysql.com

Oracle

Oracle database: www.oracle.com

Sybase

Sybase database: www.sybase.com

DB2

IBM database: www.software.ibm.com/data/db2/linux

Informix

Informix database: www.informix.com/linux

Adabas D

Adabas D database: www.softwareag.com/adabasd

GNU SQL

The GNU SQL database: www.ispras.ru/~kml/gss

Flagship

Interface for Xbase database files: www.fship.com/free.html

PostgreSQL

PostgreSQL, included with Red Hat, is based on the POSTGRES database management system, though it uses SQL as its query language. POSTGRES is a next-generation research prototype developed at the University of California, Berkeley. Linux versions of PostgreSQL are included in most distributions, including Red Hat, Debian, and Mandrake distributions. You can get more information on it from the PostgreSQL Web site at www.postgresql.org. PostgreSQL is an open source project, developed under the GPL license.

Note 

Red Hat now offers a version of Linux with PostgreSQL, called the Red Hat Database, that is optimized for database operations.

PostgreSQL is often used to provide database support for Internet servers with heavy demands such as Web servers. With a few simple commands, you can create relational database tables. Use the createuser command to create a PostgreSQL user that you can then log into the server with. You can then create a database with the createdb command and construct relational tables using the create table directive. With an insert command, you can add records and then view them with the select command. Access to the server by remote users is controlled by entries in the pg_hba.conf file located in PostgreSQL directory, usually /var/lib/pgsql.

MySQL

MySQL, included with Red Hat, is a true multiuser, multithreaded SQL database server, supported by MySQL AB. MySQL is an Open Source product available free under the GPL license. You can obtain current information on it from its Web site at www.mysql.com. The site includes detailed documentation, including manuals and FAQs.

MySQL is structured on a client/server model with a server daemon (mysqld) filling requests from client programs. MySQL is designed for speed, reliability, and ease of use. It is meant to be a fast database management system for large databases and, at the same time, reliable with intensive use. MySQL maintains the /etc/my.cnf configuration file for global settings applied to both clients and servers, and the /var/lib/mysql/my.cnf file for server settings only. The /etc/my.cnf file provides information like the data directory (/var/lib/mysql) and log file locations, as well as the server base directory (/var/lib). Sample configuration files can be found in the mysql and mysql-server directories in /usr/share/doc.

To manage your MySQL database, you use the mysql command to enter the MySQL monitor. Here you can enter commands to create databases and database tables, add or remove entries, and display data. The MySQL server, mysqld, can be managed with the service command or services tool.

Oracle

Oracle offers a fully functional version of its Oracle9i database management system for Linux, as well as the Oracle Application Server. You can download trial versions from the Oracle Web site at www.oracle.com. Oracle is a professional database for large databases specifically designed for Internet e-business tasks. The Oracle Application Server provides support for real-time and commerce applications on the Web. As Linux is a fully functional version of Unix, Oracle is particularly effective on it. Oracle was originally designed to operate on Unix, and Linux is a far better platform for it than other PC operating systems.

Oracle offers extensive documentation for its Linux version that you can download from its Documentation page, to which you can link from the Support pages on its Web site. The documentation available includes an installation guide, an administrator's reference, and release notes, as well as the generic documentation. You can find specific information on installing and configuring Oracle for Linux in the Oracle Database HOW-TO.

Informix

Informix (now controlled by IBM) offers an integrated platform of Internet-based applications called Informix Internet Foundation.2000 on Linux. These include the Informix Dynamic Server, their database server. Informix Dynamic Server features Dynamic Scalable Architecture, making it capable of effectively using any hardware setup. Informix provides only commercial products. No free versions exist, though the company currently provides special promotions for Linux products. You can find out more about Informix at www-4.ibm.com/software/data/informix.

Informix strongly supports Linux development of its Informix line. It provides developer support through its Informix Developer Network (www7b.boulder.ibm.com/dmdd/zones/informix).

Sybase

For Linux, Sybase offers the Sybase Adaptive Server Enterprise server (see www.sybase.com). You can currently download the Adaptive Server Enterprise server from the Web site. The Sybase Enterprise database features data integration that coordinates all information resources on a network. SQL Anywhere is a database system designed for smaller databases, though with the same level of complexity found in larger databases.

DB2

IBM provides a Linux version of its DB2 Universal Database software. You can download it free from the IBM DB2 Web page for Linux, www.software.ibm.com/data/db2/linux/. DB2 Universal Database for Linux includes Internet functionality along with support for Java and Perl. With the Web Control Center, administrators can maintain databases from a Web browser. DB2 features scalability to expand the database easily, support for Binary Large Objects, and cost-based optimization for fast access. DB2 is still very much a mainframe database, though IBM is currently working on refining its Unix/Linux version.

Adabas D

Adabas D is an intermediate relational database, not quite as powerful or as large as Oracle, which is meant for use on smaller networks of personal databases. It still provides the flexibility and power found in all relational databases. Adabas D provides a free personal version for Linux. You can also check the Adabas D Web site at www.softwareag.com/adabasd. A more advanced commercial version called Adabas 7 is also available from Softeare AG for Linux system.

GNU SQL

GNU SQL is the GNU relational database developed by a group at the Institute for System Programming of the Russian Academy of Sciences and supported by the GNU organization. It is a portable multiuser database management system with a client/server structure that supports SQL. The server processes requests and performs basic administrative operations, such as unloading parts of the database used infrequently. The clients can reside on any computer of a local network. GNU SQL uses a dialect of SQL based on the SQL-89 standard and is designed for use on a Unix-like environment. You can download the database software from the GNU FTP site at ftp.gnu.org. For more information, contact the GNU SQL Web site at www.ispras.ru/~kml/gss.

Xbase Databases

Databases accessed with Xbase are smaller in scale, designed for small networks or for personal use. Many are originally PC database programs, such as dBaseIII, Clipper, FoxPro, and Quicksilver. Currently, only Flagship provides an interface for accessing Xbase database files.

Flagship is a compiler with which you can create interfaces for querying Xbase database files. The interfaces support menus and dialog boxes, and they have function calls that execute certain database queries. Flagship can compile dBaseIII+ code and up. It is compatible with dBase and Clipper and can access most Xbase file formats, such as .dbf, .dbt, .fmt, and .frm. One of Flagship's key features is that its interfaces can be attached to a Web page, enabling users to update databases. Flagship is commercial software, though you can download a free personal version from its Web site at www.fship.com/free.html.



Previous Section
 < Day Day Up > 
Next Section
This HTML Help has been published using the chm2web software.