鸳鸯亭资源网 Design By www.gvabc.com
据我了解国内四大国产数据库,其中三个都是基于PostgreSQL开发的。并且,因为许可证的灵活,任何人都可以以任何目的免费使用,修改,和分发 PostgreSQL,不管是私用,商用,还是学术研究使用。本文只是简单介绍一下postgresql的安装和简单的使用,语法方面涉及的比较少,以方便新手上路为目的。

1.系统环境和安装方法 ;
PostgreSQL的安装方法比较灵活,可以用源码包安装,也可以用您使用的发行版所带的软件包来安装,还可以采用在线安装……

1.1 系统环境:Ubuntu Linux 7.04 ;Fedora;Slackware;

1.2 安装;
Ubuntu下安装
软件其实很简单,用新立得软件包管理器搜索psql便能查到postgresql-client-8.2(同时可以搜到8.1版本,哪一个都可以),选中-应用即可。或者在终端下输入
xiaop@localhost$ sudo apt-get install postgresql-8.2
Slackware下安装:
请到 linuxpackages.net 上查找您所用系统的对应版本,用pkginstall 来安装,或您安装slap-get 工具,在线自动安装;要用到root权限,可以通用sudo。关于su和sudo的参考;《Linux 系统中的超级权限的控制》
安装postgresql的软件包,可用下面的办法 ;
xiaop@localhost# pkginstall post*.tgz

xiaop@localhost# slapt-get --install postgresql-8.2.4
在Fedora中,您可以用软件包在线安装工具来安装
注:这样就安装好了PostgreSQL 8.2了,该安装将自动创建一个缺省的数据库集群(pgsqldb.org中的译法)“main”,且生成一个数据库超级用户postgres。

2. 启动PostgreSQL 数据库服务器;

2.1 在流行Linux发行版的启动方法;
在Ubuntu系统中,服务器启动脚本放在 /etc/init.d目录中,您可以用下面的方法来启动,对于Fedora和Gentoo 也是类似的;
xiaop@localhost~# /etc/init.d/postgresql-8.2 start 注:启动;
xiaop@localhost~# /etc/init.d/postgresql-8.2 restart 注:重启;
xiaop@localhost~# /etc/init.d/postgresql-8.2 stop 注:停止;
xiaop@localhost~# /etc/init.d/postgresql-8.2 status 注:查看状态;
在Slackware中,PostgreSQL的启动脚本放在 /etc/rc.d目录中,如果您用从linuxpackages.net 上下载的软件包或在线安装的软件包;
xiaop@localhost~# /etc/rc.d/rc.postgres start
如果您用源码包编译安装,启动PostgreSQL,请查看PostgreSQL官方文档;

2.2 关于 PostgreSQL启动和存储目录;
启动PostgreSQL服务器时,一般是以postgres 用户来启动的,自编译安装的除外;对于数据库的存储一般是放在/var/lib中的相关目录,比如 /var/lib/pgsql或 /var/lib/postgresql/8.2/main/ 目录等;不同的发行版可能不太一样,不过还是大同小异,您可以通过修改数据存储位置把数据库存在其它地方;

3.创建用户

添加用户命令格式。
createuser 是 SQL 命令 CREATE USER的封装。
命令:createuser [-a] [-A] [-d] [-D] [-e] [-P] [-h 主机名] [-p port] 用户名

参数说明:
[-a]:允许创建其他用户,相当于创建一个超级用户;
[-A]:不允许此用户创建其他用户;
[-d]:允许此用户创建数据库;
[-D]:不允许此用户创建数据库;
[-e]:将执行过程显示到Shell上;
[-P]:创建用户时,同时设置密码;
[-h 主机名]:为某个主机上的Postgres创建用户;
[-p port]:与-h参数一同使用,指定主机的端口。

3.1添加用户;

3.1.1不带参数的创建用户;
xiaop@localhost~$ createuser testuser
Shall the new user be allowed to create databases? (y/n) n --------是否可以创建数据库:否
Shall the new user be allowed to create more new users? (y/n) n ---------是否可以创建新用户:否
CREATE USER
注:不带参数创建用户时,Postgres会询问此用户的权限,上面的例子创建了一个普通用户;

3.1.2 为指定的主机和端口上创建用户 ;
xiaop@localhost~$ createuser -h 172.28.18.51 -p 5000 -D -A -e testuser
CREATE USER joe NOCREATEDB NOCREATEUSER;
CREATE USER
注:这个命令为主机172.28.18.51的5000端口创建用户testuser, 此用户不可以创建数据库和其他用户。

3.1.3创建超级用户;
xiaop@localhost~$ createuser -P -d -a -e testuser
Enter password for new user: testuser
Enter it again: testuser
CREATE USER joe PASSWORD 'testuser' CREATEDB CREATEUSER;
CREATE USER
注:这个命令在本地创建一个超级用户(-a),可以创建数据库(-d), 同时要求设置密码。

3.2 删除用户:
命令:dropuser [-i] [-h] [-p] [-e] 用户名
参数说明:
[ -i]:删除用户前,要求确认;
[-h 主机名]:删除某个主机上的Postgres用户;
[-p port]:与-h参数一同使用,指定主机的端口;
[-e]:将执行过程显示到Shell上。

3.2.1 删除本地的Postgres用户;
xiaop@localhost~$ dropuser testuser
DROP USER

3.2.2 删除远程Postgres服务器上的用户;
xiaop@localhost~$ dropuser -p 5000 -h 172.28.18.51 -i -e testuser
User "testuser" and any owned databases will be permanently deleted.
Are you sure? (y/n) y
DROP USER "testuser"
DROP USER
注:此命令删除主机172.28.18.51(-h)的5000端口(-p)的用户testuser,并且需要确认(-i);

4. 创建和删除数据库;

4.1创建数据库
看看您能否访问数据库服务器的第一个例子就是试着创建一个数据库;
要创建一个新的数据库,在我们这个例子里叫 mydb,您可以使用下面的命令:
xiaop@localhost~$ createdb mydb
它应该生成下面这样的响应:
CREATE DATABASE
如果这样,那么这一步就成功了,如果您看到类似下面这样的信息
createdb: command not found
那么就是PostgreSQL没有安装好,要么是就根本没装上;
您还可以用其它名字创建数据库。 PostgreSQL 允许您在一个节点上创建任意数量的数据库。 数据库名必须是以字母开头并且小于 63 个字符长。 一个方便的做法是创建和您当前用户名同名的数据库。 许多工具假设该数据库名为缺省数据库名,所以这样可以节省您的敲键。要创建这样的数据库,只需要键入 :
xiaop@localhost~$ createdb

4.2 删除数据库
如果您再也不想使用您的数据库了,那么您可以删除它。 比如,如果您是数据库 mydb 的所有人(创建人), 那么您就可以用下面的命令删除它:
xiaop@localhost~$ dropdb mydb
注:(对于这条命令而言,数据库名不是缺省的用户名。这样您就必须声明它。) 这个动作物理上将所有与该数据库相关的文件都删除并且不可取消, 因此做这件事之前一定要想清楚;

5.访问数据库
一旦您创建了数据库,您就可以访问它,您可以运行PostgreSQL交互的终端程序,叫psql,它允许您交互地输入,编辑,和执行 SQL 命令。(图形化登录请参见6. Postgresql图形化管理工具pgAdmin3)

5.1 激活数据库
您需要启动psql,试验刚才的例子。您可以用下面的命令为 mydb 数据库激活它:
xiaop@localhost~$ psql mydb
如果您省略了数据库名字,那么它缺省就是您的用户账号名字。
Welcome to psql 8.2.4, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
mydb=#
注:最后一行 mydb=#,这个提示符意味着您是数据库超级用户。

5.2 帮助和退出数据库
psql 程序有一些不属于 SQL 命令的内部命令。 它们以反斜杠开头,""。 有些这种命令在欢迎信息中列出。比如,您可以用下面的命令获取各种PostgreSQL SQL 命令的帮助语法:
mydb=> \h
要退出 psql,键入
mydb=> \q
然后 psql 就会退出并且给您返回到命令行 shell; (要获取更多有关内部命令的信息,您可以在 psql 提示符上键入 \?。)
12下一页阅读全文
标签:
PostgreSQL,安装

鸳鸯亭资源网 Design By www.gvabc.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
鸳鸯亭资源网 Design By www.gvabc.com

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。