在 Ubuntu 16.04 LTS 中将 postgresql 从 9.3 升级到 9.5
Upgrade postgresql from 9.3 to 9.5 in Ubuntu 16.04 LTS
我在我的机器上安装了 Ubuntu 16.04 LTS 和 postgresql-9.3。 (看起来我保留了这个实例,因为 16.04 安装了 postgresql9.5)。
嗯,我安装了 9.5 并删除了 9.3 使用...
sudo apt-get remove postgresql-9.3
不幸的是,我不知道所有的数据库和角色都在那个实例 (9.3) 中并且不与 9.5 共享。当尝试与我的用户一起登录时,它不起作用,因为它们不存在于该实例/集群中(我说的对吗?)
我尝试使用 Ubuntu 存储库安装 9.3,但它只安装了 9.5。如何将我的所有角色和数据库移动到 9.5 ??
要查看您的数据库是否仍在您的服务器上,请检查此文件夹:
ls /var/lib/postgresql/9.3/main/base/
如果你在那里有文件,这意味着你的数据库还在这里!!
如果此文件夹中没有任何内容,则表示您的生活数据已被删除。
您是否对数据库进行了定期备份?
如果是这样,您需要安装回以前版本的 PostgreSQL 并进行还原。
apt-get install postgresql-9.3
psql -h localhost
create database dbname;
psql -h localhost dbname < backup_file
在 Debian 或 Ubuntu 上升级的正常过程之后是这个:
服务 postgresql 停止
关于 vire le cluster de la nouvelle version(normalement vide si on vient juste de l'installer : faire gaffe à ne pas laisser passer de temps entre l'installation de la nouvelle version et la migration des données, pour que personne n'utilise le nouveau cluster)
停止新更新的 PostreSQL 版本:
service postgresql stop
删除新的更新版本集群以确保里面没有任何东西:
pg_dropcluster --stop 9.5 main
然后数据迁移:
pg_upgradecluster -m upgrade 9.3 main
然后停止以前版本的 PotsgreSQL :
pg_dropcluster 9.3 main --stop
删除旧版本:
apt-get autoremove --purge postgresql-9.3
然后重启PostgreSQL,迁移数据库的新版本:
service postgresql start
希望对您有所帮助。
但是如果你没有做任何备份,不幸的是你应该丢失了所有东西。
我在我的机器上安装了 Ubuntu 16.04 LTS 和 postgresql-9.3。 (看起来我保留了这个实例,因为 16.04 安装了 postgresql9.5)。
嗯,我安装了 9.5 并删除了 9.3 使用...
sudo apt-get remove postgresql-9.3
不幸的是,我不知道所有的数据库和角色都在那个实例 (9.3) 中并且不与 9.5 共享。当尝试与我的用户一起登录时,它不起作用,因为它们不存在于该实例/集群中(我说的对吗?)
我尝试使用 Ubuntu 存储库安装 9.3,但它只安装了 9.5。如何将我的所有角色和数据库移动到 9.5 ??
要查看您的数据库是否仍在您的服务器上,请检查此文件夹:
ls /var/lib/postgresql/9.3/main/base/
如果你在那里有文件,这意味着你的数据库还在这里!! 如果此文件夹中没有任何内容,则表示您的生活数据已被删除。
您是否对数据库进行了定期备份?
如果是这样,您需要安装回以前版本的 PostgreSQL 并进行还原。
apt-get install postgresql-9.3
psql -h localhost
create database dbname;
psql -h localhost dbname < backup_file
在 Debian 或 Ubuntu 上升级的正常过程之后是这个: 服务 postgresql 停止
关于 vire le cluster de la nouvelle version(normalement vide si on vient juste de l'installer : faire gaffe à ne pas laisser passer de temps entre l'installation de la nouvelle version et la migration des données, pour que personne n'utilise le nouveau cluster)
停止新更新的 PostreSQL 版本:
service postgresql stop
删除新的更新版本集群以确保里面没有任何东西:
pg_dropcluster --stop 9.5 main
然后数据迁移:
pg_upgradecluster -m upgrade 9.3 main
然后停止以前版本的 PotsgreSQL :
pg_dropcluster 9.3 main --stop
删除旧版本:
apt-get autoremove --purge postgresql-9.3
然后重启PostgreSQL,迁移数据库的新版本:
service postgresql start
希望对您有所帮助。
但是如果你没有做任何备份,不幸的是你应该丢失了所有东西。