postgresql学习记录1

数据库9.3.5,系统fedora20,不同系统操作略有不同。

使用yum 命令安装即可:sudo yum install postgresql,postgresql-server

安装完毕后系统中会创建一个postgres的用户,切换到这个用户后进行数据库的初始化:

initdb --encoding=UTF-8 --no-locale -D /var/lib/pgsql/data/

或者使用postgresql-setup initdb 命令。

紧接着启动服务:pg_ctl -D /var/lib/pgsql/data start

为了方便下面的操作,我重置了postgres用户的密码:

sudo passwd -d postgres
sudo -u postgres passwd

再把postgres用户赋予执行sudo的权限,设置开机自启动:

systemctl start postgresql.service
systemctl enable postgresql.service

这时使用psql命令就可以进入数据库终端了。

进入数据库终端之前我们先建立一个数据库:createdb mytest

不过每次想查看数据库都需要切换用户比较麻烦,所以再建立一个和平时使用的账户同名的角色:

CREATE ROLE myuser WITH SUPERUSER LOGIN PASSWORD '123456';

这里我为了省事直接把这个用户设置为超级用户,其他细节看官方文档即可。

然后切换回平时使用的账户进行链接即可:psql -h localhost -U myuser mytest (注意大U)

如果上面创建角色时是超级用户或者有相应的权限,也可以直接执行createdb命令创建数据库。

两个用到的配置文件位置:

_/var/lib/pgsql/data/postgresql.conf_   端口及IP配置
_/var/lib/pgsql/data/pg_hba.conf_   权限配置

这样初期准备工作就做好了。