Rub*_*ben 4 postgresql postgresql-9.3 ubuntu-16.04
我已经安装了Ubuntu LTS 16.04在我的机器在PostgreSQL-9.3。(自16.04版安装postgresql9.5以来,我似乎保留了此实例)。
好吧,我安装了9.5,并使用...删除了9.3。
sudo apt-get remove postgresql-9.3
Run Code Online (Sandbox Code Playgroud)
不幸的是,我不知道所有数据库和角色都在该实例(9.3)中,并且不与9.5共享。尝试与我的用户登录时不起作用,因为它们不存在于该实例/群集中(对吗?)
我试着使用Ubuntu库安装9.3,但它安装我只是9.5。如何将所有角色和数据库移至9.5?
小智 5
要查看数据库是否仍在服务器上,请检查以下文件夹:
ls /var/lib/postgresql/9.3/main/base/
Run Code Online (Sandbox Code Playgroud)
如果那里有文件,则意味着您的数据库仍在这里!如果此文件夹中没有任何内容,则意味着您的生活数据已被删除。
您是否对数据库进行了定期备份?
如果是这样,则需要重新安装以前的PostgreSQL版本并进行还原。
apt-get install postgresql-9.3
psql -h localhost
create database dbname;
psql -h localhost dbname < backup_file
Run Code Online (Sandbox Code Playgroud)
在Debian或Ubuntu上进行正常升级之后,这个步骤就是这样:service postgresql stop
在新版本的维尔集市上(安装者的规范化视频:新版本的安省集邮者和新移民版本的安装者,请使用新的版本新集群)
停止PostreSQL的新更新版本:
service postgresql stop
Run Code Online (Sandbox Code Playgroud)
删除新的更新版本集群,以确保其中没有任何内容:
pg_dropcluster --stop 9.5 main
Run Code Online (Sandbox Code Playgroud)
然后进行数据迁移:
pg_upgradecluster -m upgrade 9.3 main
Run Code Online (Sandbox Code Playgroud)
然后停止PotsgreSQL的先前版本:
pg_dropcluster 9.3 main --stop
Run Code Online (Sandbox Code Playgroud)
删除旧版本:
apt-get autoremove --purge postgresql-9.3
Run Code Online (Sandbox Code Playgroud)
然后只需重新启动PostgreSQL,即可迁移数据库的新版本:
service postgresql start
Run Code Online (Sandbox Code Playgroud)
希望能有所帮助。
但是,如果您没有进行任何备份,那么很遗憾,您应该松散一切。
| 归档时间: |
|
| 查看次数: |
2244 次 |
| 最近记录: |