我正在使用 Ruby 和 Postgres 设置 VPS。在我的本地机器上,我安装了 postgresql 9.2.3(客户端和服务器),因此想在我的 VPS 上安装它。按照此博客文章的说明http://hendrelouw73.wordpress.com/2012/11/14/how-to-install-postgresql-9-1-on-ubuntu-12-10-linux/for在 ubuntu 上安装 postgres(唯一的区别是我试图安装 9.2.3,而他安装的是 9.1),我做了以下操作
sudo apt-get install postgresql-9.2.3
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package postgresql-9.2.3
E: Couldn't find any package by regex 'postgresql-9.2.3'
但是,如您所见,它找不到包postgresql-9.2.3
。但是,我已在本地计算机上安装了该包(我使用 Homebrew 在 Mac 上安装了该包)。
你能帮助我理解我做错什么吗?
更新我还尝试安装它,并在末尾省略“3”,就像您在下面看到的那样,但正如您所见,它不起作用。
sudo apt-get install postgresql-9.2
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package postgresql-9.2 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'postgresql-9.2' has no installation candidate
更新
Ign http://security.ubuntu.com quantal-security InRelease
Ign http://archive.ubuntu.com quantal InRelease
Hit http://security.ubuntu.com quantal-security Release.gpg
Ign http://archive.ubuntu.com quantal-updates InRelease
Hit http://security.ubuntu.com quantal-security Release
Hit http://archive.ubuntu.com quantal Release.gpg
Get:1 http://archive.ubuntu.com quantal-updates Release.gpg [933 B]
Hit http://security.ubuntu.com quantal-security/main i386 Packages
Hit http://archive.ubuntu.com quantal Release
Get:2 http://archive.ubuntu.com quantal-updates Release [49.6 kB]
Hit http://security.ubuntu.com quantal-security/main Translation-en
Hit http://archive.ubuntu.com quantal/main i386 Packages
Hit http://archive.ubuntu.com quantal/universe i386 Packages
Ign http://security.ubuntu.com quantal-security/main Translation-en_US
Hit http://archive.ubuntu.com quantal/main Translation-en
Hit http://archive.ubuntu.com quantal/universe Translation-en
Get:3 http://archive.ubuntu.com quantal-updates/main i386 Packages [259 kB]
Get:4 http://archive.ubuntu.com quantal-updates/universe i386 Packages [192 kB]
Hit http://archive.ubuntu.com quantal-updates/main Translation-en
Hit http://archive.ubuntu.com quantal-updates/universe Translation-en
Ign http://archive.ubuntu.com quantal/main Translation-en_US
Ign http://archive.ubuntu.com quantal/universe Translation-en_US
Ign http://archive.ubuntu.com quantal-updates/main Translation-en_US
Ign http://archive.ubuntu.com quantal-updates/universe Translation-en_US
Fetched 501 kB in 3s (148 kB/s)
Reading package lists... Done
postgresql-9.1 - object-relational SQL database, version 9.1 server
postgresql-9.1-dbg - debug symbols for postgresql-9.1
postgresql-9.1-debversion - Debian version number type for PostgreSQL
postgresql-9.1-ip4r - IPv4 and IPv4 range index types for PostgreSQL 9.1
postgresql-9.1-orafce - Oracle support functions for PostgreSQL 9.1
postgresql-9.1-pgfincore - set of PostgreSQL functions to manage blocks in memory
postgresql-9.1-pgmemcache - PostgreSQL interface to memcached
postgresql-9.1-pgmp - arbitrary precision integers and rationals for PostgreSQL 9.1
postgresql-9.1-pgpool2 - connection pool server and replication proxy for PostgreSQL - modules
postgresql-9.1-pljava-gcj - Java procedural language for PostgreSQL 9.1
postgresql-9.1-pllua - Lua procedural language for PostgreSQL 9.1
postgresql-9.1-plproxy - database partitioning system for PostgreSQL 9.1
postgresql-9.1-plr - Procedural language interface between PostgreSQL and R
postgresql-9.1-plsh - PL/sh procedural language for PostgreSQL 9.1
postgresql-9.1-postgis - Geographic objects support for PostgreSQL 9.1
postgresql-9.1-prefix - Prefix Range module for PostgreSQL
postgresql-9.1-preprepare - Pre Prepare your Statement server side
postgresql-9.1-slony1-2 - replication system for PostgreSQL: PostgreSQL 9.1 server plug-in
答案1
在 Ubuntu 官方存储库中,只有 PostgreSQL 9.1 可用。这就是找不到它的原因。
为了使用 apt 在你的 VPS 中获取 PostgreSQL v9.2,你应该遵循 Ubuntu 的官方 PostgreSQL 步骤这里
它包括将 PostgreSQL 官方存储库添加为存储库源之一
创建文件
/etc/apt/sources.list.d/pgdg.list
插入此行
deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main
导入存储库签名密钥
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
刷新你的存储库缓存
sudo apt-get update
现在你可以简单地做sudo apt-get install postgresql-9.2
答案2
事实上,你可以postgresql-9.2.3
在不同的操作系统使用不同的存储库不相关。
如果你查询Ubuntu 存储库使用网络或通过apt
,您会注意到 quantal 附带的版本是 9.1。
在 quantal 中不可用的确切原因postgresql-9.2.3
是它在冻结时尚未在发布的发行版中被接受。
要在 Ubuntu 中使用postgresql-9.2.3
,您需要自行编译。有几种方法可以实现这一点,例如使用 checkinstall 或 fpm 反向移植或打包上游版本。