PostgreSQL的配置

首先

暂且恭喜Blast One Piece获得有马纪念赛的胜利。

所以这次我会写下有关postgresql的初始设置作为备忘录。

操作系统是Ubuntu。

安装postgresql

安装PostgreSQL需要

sudo apt-get install postgresql

可以使用下面的中文句子来表达相同的意思:“可以。”

之后

sudo passwd postgres

通过设置密码进行设定。

连接到SQL服务器

连接到SQL服务器

su postgres

输入后将要求输入密码

psql

只要输入”と入力すれば”

postgres=#

出现了类似的文字。

然而,就我个人而言

psql: could not connect to server: No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

出现了这样的错误。

一开始我以为没有s.PGSQL.5432这个文件应该怎么办…于是我进行了调查,发现这个错误是因为没有启动sql服务器而出现的。

所以如果遇到这个错误

sudo /etc/init.d/postgresql start

只要按“と”键就可以了

无事应该启动SQL并且不会出现错误。

无法创建用户

首先,我认为配置已经完成了,所以我尝试通过在rails应用程序中使用”createuser -d -P name”命令来创建一个用户,但是出现了以下错误。

createuser: could not connect to database postgres: FATAL:  role "root" does not exist

看起来问题似乎是没有名为”root”的角色。

制作卷式的方法

su postgres
psql

当输入并显示为postgres=#时

CREATE ROLE rolename LOGIN CREATEDB CREATEROLE PASSWORD 'password';

如果这样就可以的话

如果不写CREATEROLE

createuser: creation of new role failed: ERROR:  permission denied to create role

以这种方式被责备。

顺便提一下,如果想要更改角色信息的话

ALTER ROLE name WITH CREATEROLE 

可以像这样进行更改。

使用Rails时采用postgresql数据库。

如果在Rails中使用PostgreSQL

首先

createuser usernmae
createdb dbname

创建一个用户(user)和数据库(db)

当创建一个新的Rails项目时

rails new name -TB --database=postgresql

通过这样做,可以使用PostgreSQL创建Rails应用程序。

在`config/database.yml`文件的`default`位置

username: username
password: pass
host: localhost

以追加的方式写入

发展方面的

database: dbname

重新写。

现在我可以使用Rails来使用PostgreSQL了。

文献引用

从安装开始设置Rails-PostgreSQL环境。

在Rails中使用PostgreSQL(从安装到迁移)