标签: psql

ec2服务器postgres错误"找不到版本`GLIBC_2.14'"

尝试\i create_db.sqlpsql时会抛出错误:

psql:create_db.sql:123: ERROR:  could not load library 
"/usr/lib64/pgsql/plpgsql.so": /lib64/libc.so.6: version 
`GLIBC_2.14' not found (required by /usr/lib64/pgsql/plpgsql.so)
Run Code Online (Sandbox Code Playgroud)

create_db.sql的第123行是文件的最后一行,位于函数定义的末尾:

$$ language plpgsql;
Run Code Online (Sandbox Code Playgroud)

东西的版本:

$ psql --version
psql (PostgreSQL) 9.2.7

$ /lib64/libc.so.6 --version
GNU C Library (GNU libc) stable release version 2.17, by Roland McGrath et al.
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by …
Run Code Online (Sandbox Code Playgroud)

postgresql glibc libc amazon-ec2 psql

12
推荐指数
1
解决办法
1518
查看次数

Dockerizing PostgreSQL - psql连接被拒绝

我正在玩Docker,我想Dockerize一个Postgres容器.

我正在关注官方示例,但我无法连接到使用psql运行的映像.

我用示例的内容创建了Dockerfile.我从Dockerfile构建了一个图像并为其指定了一个名称.然后我运行PostgreSQL服务器容器(在前台).

~/test » docker run --rm -P --name pg_test eg_postgresql                                                                                                       
2014-10-10 06:12:43 UTC LOG:  database system was interrupted; last known up at 2014-10-10 06:12:29 UTC
2014-10-10 06:12:43 UTC LOG:  database system was not properly shut down; automatic recovery in progress
2014-10-10 06:12:43 UTC LOG:  redo starts at 0/1782F68
2014-10-10 06:12:43 UTC LOG:  record with zero length at 0/1782FA8
2014-10-10 06:12:43 UTC LOG:  redo done at 0/1782F68
2014-10-10 06:12:43 UTC LOG:  last completed transaction was at log …
Run Code Online (Sandbox Code Playgroud)

postgresql psql docker

12
推荐指数
4
解决办法
2万
查看次数

如何在postgres数据库中执行.sql文件

我正在使用Postgres数据库和PostGIS以及PGAdmin.我有很多不同大小的.sql文件,如300MB,280MB等,可以插入到数据库中.什么是最好的方法,例如通过java代码或一些psql命令.我也是java和postgres数据库的新手.请给我一些建议.

postgresql psql

12
推荐指数
3
解决办法
4万
查看次数

如何在psql中退出查询结果查看器?

第一个查询:

database=# select * from table limit 1;
...
 |
(1 row)

(END)
Run Code Online (Sandbox Code Playgroud)

我想做第二个查询,但我不能.ctrl + Z从psql退出.我可以按什么才能退出结果查看?

linux postgresql shell debian psql

12
推荐指数
1
解决办法
8406
查看次数

pg_restore会覆盖现有的表吗?

假设我有两台主机服务器s1和s2.在这两个服务器中我都有一个名为n1的模式,现在我对s1的模式n1中的一些表进行了一些更改.我希望对服务器s2的模式n1进行相同的更改.我打算做的是使用pg_dump备份服务器s1的模式n1,并使用pg_restore在服务器s2中恢复.现在我的问题是,因为服务器s2中已经存在具有相同表集的相同模式n1.恢复过程会做什么?它会覆盖现有的表还是应该删除服务器s2的现有模式并使用服务器s1的转储来恢复它?

postgresql pg-dump pg-restore psql postgresql-9.5

12
推荐指数
1
解决办法
1万
查看次数

Rails 迁移 - 添加允许跳过空值的唯一索引

我想向name现有表 psql 中的列添加唯一约束

创建表(PostgreSQL):

class CreateRequests < ActiveRecord::Migration
  def change
    create_table :requests do |t|
      t.integer :user_id
      t.string :name
      t.string :address
      t.timestamps null: true
    end
    add_index :requests, :user_id
  end
end
Run Code Online (Sandbox Code Playgroud)

所以我在模型中添加了验证唯一性

class Request < ModelBase
  belongs_to :user
  validates :user, presence: true
  validates :name, uniqueness: true, allow_blank: true
  ...
Run Code Online (Sandbox Code Playgroud)

和这样的迁移:

def change
    add_index :user_requests, :name, unique: true
end
Run Code Online (Sandbox Code Playgroud)

但我注意到在某些情况下,名称可以为空,我可以在条件:name为空/不为空的情况下添加索引吗?

编辑:是的,我希望那些空值保留在数据库中(我不需要修改过去的请求)。我认为我需要编辑迁移以更准确地了解数据库的实际状态。

ruby-on-rails psql

12
推荐指数
2
解决办法
4853
查看次数

psql:数据库"dbname"的权限被拒绝("用户没有CONNECT权限.")/"无法识别的角色选项'connect'"

当我尝试使用psql登录我的数据库时,执行以下操作:

psql dbname --username=qgis --password
>>(prompts for password, entered password)
psql: FATAL:  permission denied for database "gisdatabase"
DETAIL:  User does not have CONNECT privilege.
Run Code Online (Sandbox Code Playgroud)

我在Google上搜索了有关这个简单问题的信息,但没有找到任何人直接谈论此事.

我试过这样做:

psql dbname
>>ALTER ROLE qgis WITH CONNECT;
Run Code Online (Sandbox Code Playgroud)

但得到了这个错误:

ERROR:  unrecognized role option "connect"
Run Code Online (Sandbox Code Playgroud)

再一次,我在这里,再问一个关于stackoverflow的问题.谢谢你们的时间

postgresql login connect role psql

11
推荐指数
1
解决办法
2万
查看次数

psql中set,\ set和\ pset之间的区别

psql在使用setvs. \setvs. 之间工作时,我有时会感到困惑\pset.我觉得:

  • set用于连接到db的会话变量.例如SET ROLE dba;
  • \set用于此psql会话的局部变量.例如\set time 'select current_timestamp'
  • \pset用于此psql会话的psql设置.例如'\pset border 2'

但是,我从来没有找到我认为对每个人都很好的解释.我的假设是否正确?

我正在使用PostgreSQL 9.4

postgresql psql postgresql-9.4

11
推荐指数
1
解决办法
9236
查看次数

PSQL连接别名

是否可以为psql创建连接别名?

例如,而不是键入:

psql --host=pr-gis-db --username=peregrinius --port=5432
Run Code Online (Sandbox Code Playgroud)

我只是打字

psql pr-gis-db
Run Code Online (Sandbox Code Playgroud)

它连接预先配置的设置..也许提示输入密码而不是存储密码.

postgresql psql

11
推荐指数
1
解决办法
1704
查看次数

如何使用 psql 解决这个问题?| psql:错误:致命:角色“postgres”不存在

我在使用 PostgreSQL 时遇到问题。我最近在 ubuntu 20.04 中安装了这个版本(13+223.pgdg20.04+1)的 postgresql 软件包。

我正在尝试运行psql命令,但出现以下错误:

psql:错误:致命:角色“my_username”不存在

我尝试使用 创建新用户createuser me,但出现以下错误:

createuser:错误:无法连接到数据库 template1:​​致命:角色“my_username”不存在

我也尝试过强制使用 postgres 用户createuser me --username=postgres,但出现以下错误:

createuser:错误:无法连接到数据库 template1:​​致命:用户“postgres”的对等身份验证失败

如何解决这些问题以便在我的计算机上本地使用 PostgreSQL 而不会出现这些问题?

PD:我已经重新安装了 postgres,现在我在执行以下操作时遇到了不同的错误psql

psql: 错误: 无法连接到服务器: 没有这样的文件或目录 服务器是否在本地运行并接受 Unix 域套接字“/var/run/postgresql/.s.PGSQL.5432”上的连接?

postgresql createuser psql ubuntu-20.04

11
推荐指数
2
解决办法
2万
查看次数