Ubuntu 提供两个数据库服务器。它们是:
MySQL™
PostgreSQL
它们位于主软件库中。该部分内容说明如何安装和配置这些数据库服务器。
MySQL 是一个快速、多线程、多用户、强大的 SQL 数据库服务器。它旨在成为能用于大型应用、高负载的生产系统以及大规模部署的软件。
要安装 MySQL,可以在终端提示符后运行下列命令:
sudo apt-get install mysql-server mysql-client
一旦安装完成,MySQL 服务器应该自动启动。您可以在终端提示符后运行以下命令来检查 MySQL 服务器是否正在运行:
sudo netstat -tap | grep mysql
当您运行该命令时,您可以看到类似下面的行:
tcp 0 0 localhost.localdomain:mysql *:* LISTEN -
如果服务器不能正常运行,您可以通过下列命令启动它:
sudo /etc/init.d/mysql restart
PostgreSQL 是一个面向对象的数据库系统,它有着传统商业数据库系统和下一代 DBMS 系统所增进的功能。
要安装 PostgreSQL,可以在命令提示符后运行下列命令:
sudo apt-get install postgresql
一旦安装完成,您就要按您的需要配置 PostgreSQL 服务器,尽管缺省配置已经可以使它可以正常运行了。
缺省状态下,通过 TCP/IP 的连接是被禁用的。PostgreSQL 支持多客户认证方式。其中 IDENT 认证方式被默认使用。请参考 PostgreSQL 管理员指南。
接下来的讨论假定您希望启用 TCP/IP 连接并对客户认证使用 MD5 模式。PostgreSQL 配置文件被保存在 /etc/postgresql/<version>/main /etc/postgresql/7.4/main
要配置 ident 认证,请在 /etc/postgresql/7.4/main/pg_ident.conf
文件中添加以下几条:
要启用 TCP/IP 连接,编辑文件 /etc/postgresql/7.4/main/postgresql.conf
。
找到 #tcpip_socket = false 行并将其改为 tcpip_socket = true。如果您知道您正在做什么,那么您也可以编辑其他所有参数。详情请参考配置文件或 PostgreSQL 文档。
缺省状态下,没有为 MD5 客户端认证设置用户证书。因此,首先必须将 PostgreSQL 服务器配置成使用 trust 客户端认证,用以连接数据库。配置密码并将配置恢复成使用 MD5 客户端认证。要启用 trust 客户端认证,可编辑文件 /etc/postgresql/7.4/main/pg_hba.conf
注释所有使用 ident 和 MD5 客户端认证的行并添加下列行:
local all postgres trust sameuser
然后运行下列命令启动 PostgreSQL 服务器:
sudo /etc/init.d/postgresql start
一旦 PostgreSQL 服务器成功启动,在终端提示符后运行下面的命令以连接缺省的 PostgreSQL 模板数据库。
psql -U postgres -d template1
上面的命令是以用户 postgres 的身份连接 PostgreSQL 的 template1 数据库。一旦您连到 PostgreSQL 服务器,您将会在 SQL 提示符下。您可以在 psql 提示符中运行下列命令来为用户 postgres 配置密码。
template1=# ALTER USER postgres with encrypted password 'your_password';
在配置密码后,编辑文件 /etc/postgresql/7.4/main/pg_hba.conf
以使用 MD5 认证:
注释掉最近添加的 trust 行并添加下面行:
local all postgres md5 sameuser
无论如何上面配置并不完整。更多的配置参数请参考 PostgreSQL 管理员指南。