PostgreSQL:修订间差异
(未显示7个用户的8个中间版本) | |||
第1行: | 第1行: | ||
PostgreSQL是一个强大的关系型数据库管理系统,它按照BSD许可<sup>[1]</sup>发行。PostgreSQL包含很多高级的特性,拥有良好的性能和很好的适用性。 | PostgreSQL是一个强大的关系型数据库管理系统,它按照BSD许可<sup>[1]</sup>发行。PostgreSQL包含很多高级的特性,拥有良好的性能和很好的适用性。 | ||
第9行: | 第5行: | ||
PostgreSQL绑定了很多种编程语言,例如 C, C++, [http://python.org/ Python], Java, PHP, Ruby等 ,它可以操作很多东西,从简单的Web应用程序到拥有数百万条记录的庞大数据库。 | PostgreSQL绑定了很多种编程语言,例如 C, C++, [http://python.org/ Python], Java, PHP, Ruby等 ,它可以操作很多东西,从简单的Web应用程序到拥有数百万条记录的庞大数据库。 | ||
<pre><nowiki> | <pre><nowiki> | ||
第27行: | 第21行: | ||
=== 服务器基本设置 === | === 服务器基本设置 === | ||
===启动=== | ===启动=== | ||
<pre>sudo /etc/init.d/postgresql-8.4 start</pre> | <pre>sudo /etc/init.d/postgresql-8.4 start(10.04下安装的postgresql默认是8.4,若是10.10,则不用加版本号)</pre> | ||
<pre>sudo /etc/init.d/postgresql-8.4 stop</pre> | <pre>sudo /etc/init.d/postgresql-8.4 stop</pre> | ||
==== 设置密码 ==== | ==== 设置密码 ==== | ||
第42行: | 第36行: | ||
ALTER USER postgres WITH PASSWORD ' <***password***> '; | ALTER USER postgres WITH PASSWORD ' <***password***> '; | ||
</pre> | </pre> | ||
==== 设置 postgres 用户的密码 ==== | |||
<pre><nowiki> | |||
sudo passwd postgres | |||
</nowiki></pre> | |||
而后输入自己的密码 | |||
==== 创建数据库 ==== | ==== 创建数据库 ==== | ||
创建第一个数据库,我们把它命名为"mydb" | 创建第一个数据库,我们把它命名为"mydb",先输入: | ||
<pre><nowiki> | |||
su postgres | |||
</nowiki></pre> | |||
转入 postgres 用户. | |||
用这样的方试会报错 | |||
<pre><nowiki> | <pre><nowiki> | ||
sudo su postgres -c createdb mydb | sudo su postgres -c createdb mydb | ||
</nowiki></pre> | |||
转为 postgres 用户登陆后,执行 | |||
<pre><nowiki> | |||
createdb mydb | |||
</nowiki></pre> | </nowiki></pre> | ||
第62行: | 第70行: | ||
通过这个图形界面,你可以新建数据库,表和其他对象;查询数据库,添加数据,执行SQL语句等。 | 通过这个图形界面,你可以新建数据库,表和其他对象;查询数据库,添加数据,执行SQL语句等。 | ||
用pgAdmin 3连接 | |||
{| | |||
|[[Image:Pgadminpostgresql.png|thumb|center|500px|效果图]] | |||
|} | |||
=== 管理数据库服务器 === | === 管理数据库服务器 === |
2016年6月24日 (五) 16:48的最新版本
PostgreSQL是一个强大的关系型数据库管理系统,它按照BSD许可[1]发行。PostgreSQL包含很多高级的特性,拥有良好的性能和很好的适用性。
PostgreSQL绑定了很多种编程语言,例如 C, C++, Python, Java, PHP, Ruby等 ,它可以操作很多东西,从简单的Web应用程序到拥有数百万条记录的庞大数据库。
sudo apt-get install postgresql
pgAdmin III 是一个方便的PostgreSQL图形客户端,它很适合初学者,可以在终端下输入如下命令来安装:
sudo apt-get install pgadmin3
你还可以通过系统->系统管理->新立德包管理器来安装这些包。
服务器基本设置
启动
sudo /etc/init.d/postgresql-8.4 start(10.04下安装的postgresql默认是8.4,若是10.10,则不用加版本号)
sudo /etc/init.d/postgresql-8.4 stop
设置密码
安装完毕,我们需要更改postgres用户的密码,否则我们就没法使用这个数据库服务器。以postgres这个系统用户的身份运行psql命令,在终端中输入如下:
sudo su postgres -c psql template1
这时候会出现新的提示符,输入下面两个命令,用新密码替换 <***password***>:
ALTER USER postgres WITH PASSWORD ' <***password***> ';
设置 postgres 用户的密码
sudo passwd postgres
而后输入自己的密码
创建数据库
创建第一个数据库,我们把它命名为"mydb",先输入:
su postgres
转入 postgres 用户.
用这样的方试会报错
sudo su postgres -c createdb mydb
转为 postgres 用户登陆后,执行
createdb mydb
使用pgAdmin III图形界面客户端
要了解PostgreSQL能干些什么,你首先要学会使用一个图形界面的客户端,在终端中输入:
pgadmin3
你现在停留在pgAdmin III的主界面,点击 "添加数据库连接" 按钮(在左上方)。弹出一个新的对话框,输入地址127.0.0.1,服务器描述,默认数据库"mydb" 和你的密码。
通过这个图形界面,你可以新建数据库,表和其他对象;查询数据库,添加数据,执行SQL语句等。 用pgAdmin 3连接
管理数据库服务器
管理用户和权限
PostgreSQL没有一个简单的管理用户的方法 ,首先你必需编辑/etc/postgres/pg_hba.conf
并修改它的默认配置(默认配置的安全性非常高),你希望 postgres
来管理它的用户(和系统用户无关),你需要添加如下几行:
8<------------------------------------------- # TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD # rezo local host all all 10.0.0.0 255.255.255.0 password 8<-------------------------------------------
它的意思是通过你的本地网络(10.0.0.0/24要替换为你的本地网络 !), postgres用户可以以传统的”用户名+密码“的方式连接到数据库。
创建一个数据库,并创建一个对该数据库拥有所有权限的用户,可以使用如下命令:
sudo su postgres -c createuser -D -A -P myuser sudo su postgres -c createdb -O myuser mydb
第一个命令是创建一个新用户,这个用户没有创建数据库的权限(-D),没有新建用户的权限(-A)。创建用户时会提示你输入密码。第二个命令是创建一个数据库'mydb ,以 'myuser' 作为它的所有者。
这个小例子可以满足你大部分的需要。要想了解更多的信息,你可以查看帮助文档或者在线文档。
进一步深入
如果你对SQL语言不熟悉,你可能希望深入研究这门强大的语言,尽管一些简单的PostgreSQL应用可能用不到这些知识 (例如一个简单的Django 项目)。
PostgreSQL PostgreSQL官方网站 包含了大量关于如何使用这个数据库的信息。
[1] 你在一些程序(例如商业的封闭代码的软件)中使用PostgreSQL时不用支付任何费用, 不同于其他的著名开源数据库