PostgreSQL的安装和初步使用
朝三暮四的我现在开始研究研究PostgreSQL。也不知道是不是这个数据库在国内的认知程度还不是很高,所以上google搜索的基本上都是英文的资料。从一个oracle从业人员的角度来看,玩儿一种数据库首先要把软件装上,然后打开黑框框敲一些代码进去,建个库,查个数什么的。
花开两朵,各表一枝,现在我把我安装后使用的一些笔记分享出来。
windows底下的安装其实很简单的,选择好安装的路径之后就可以一路下一步了。最后选择性的安装这个那个的可以不用理会,毕竟我只是个数据库开发人员。
安装好以后就可以开始用了。按照oracle的思维,应该是打开一个黑框框,首先利用操作系统验证,以sysdba进去,然后建立表空间,新建用户,赋权,用新建的用户进去,建表,插数,select。一步一步来。
首先是打开黑框框,以超级用户身份登录进去。这里需要说明的是,和oracle不一样,似乎不能用操作系统认证登录成超级用户,只能用bin下自带的一个createuser的可执行文件进行建用户操作。
如图所示,在安装的时候有一步骤时要输入密码的,这个密码就是默认的超级用户,postgres。现在要建立新用户,就要先连接上这个用户。所以才会有红色框中的参数-U。我建立的用户叫做wings,-P是为了要求系统在建立用户之后建密码。最后输入的口令就是postgres用户的。
建立号用户之后,就应该建库了,如果可以的话应该先建立一个表空间。但是我不知道应该怎么建立,以后再说吧。先建库。建库有一个createdb可执行文件,使用之:
把这个库建立到wings用户底下。就像是oracle中,用一个用户登录sqlplus之后建立数据库,那么这个数据库就是属于该用户的。有一个自带的管理软件AdminIII,相当好用,可以看看一看数据库建立成功没有:
可以看到数据库的建立如我所愿。
接下来就可以在黑框框中输入建表命令之后插数了。这个AdminIII也是可以做到的。而且图形化界面好得多,也不会在出错以后难以进行更改。
据以前的同事说这个数据库很快,比Oracle快。我希望做一个测试。
测试的内容非常简单,同一个表结构,同样多的数据,做几次count,比一比平均时间。
首先是表结构,有三个字段,month_id,password,user_no,分别是varchar,varchar,number类型。数据量30207104条。不算大,但是也绝不小,对于我这种PC机来说,已经挺可观了。
首先是PostgreSQL。直接看结果:
11秒,速度不错。
再看看Oracle:
14秒,有点让我失望了。
尽管对比效率应该是查看的执行计划的,但是由于这是两个不同的数据库,所以执行计划的可比性不是非常大,所以就用这个土办法比比。
但是最起码证明了一点。这个纯免费的数据库pg能在性能上到达和商业的Oracle媲美的地步,确实是一些资金不是很充裕的企业的很良好的选择。但是我相信如果是noSQL的话,应该在效能上更高一些,待以后学习吧。