Linux下移动了数据库 pgsql目录到另一个文件下,恢复后,启动服务提示无

Linux下移动了数据库 pgsql目录到另一个文件下,恢复后,启动服务提示无,第1张

在postgresqlconf中修改 listen_addresses = '' 在pg_hbaconf文件中添加 host all all 0000/0 md5 (md5连接需要密码登录,trust不需要密码)

(1)若所有case都不满足条件,则执行default,并执行default语句之后的case语句,直到break或结束,

(2)

default在switch中间:

若所有case都不满足条件,同上,直接执行default语句,并执行default语句之后的case语句,直到break或结束,

(3)

default在switch末尾:

若所有case语句都不满足条件,则执行default语句,结束;若有case满足,则执行case语句直到遇到break或switch语句结束

首先,数据库的安全就会涉及到备份了,而我们在VAMI UI上面是没有找到如何备份这个VCSA的数据库的,更不用说恢复了,因此,本文就着眼于如何备份和恢复它了;

1、利用SSH或者直接登录到VCSA 55的CLI界面,缺省用户名为root,缺省密码为vmware;

2、然后执行如下命令,将路径切换到vpostgres程序所在目录:

#cd /opt/vmware/vpostgres/10/bin

3、执行如下命令备份VCSA 55的vpostgres数据库:

#/pg_dump EMB_DB_INSTANCE -U EMB_DB_USER -Fp -c > VCDB_Backup

说明:VCDB_Backup这个名字可以自由定义,它就是备份出来的文件名;

4、注意,需要EMB_DB_USER的密码,可以在如下路径的文件中找到:

/etc/vmware-vpx/embedded_dbcfg

利用vi编辑器或其它编辑器打开后,如下图所示,可以看到它的密码是什么:

5、如果需要恢复备份的数据库,可以执行如下命令:

#PGPASSWORD=EMB_DB_PASSWORD /psql -db EMB_DB_INSTANCE -Upostgres - f VCDB_Backup

PostgreSQL自带一个客户端pgAdmin,里面有个备份,恢复选项,也能对数据库进行备份 恢复(还原),但最近发现数据库慢慢庞大的时候,经常出错,备份的文件过程中出错的几率那是相当大,手动调节灰常有限。所以一直寻找完美的备份恢复方案。

梦里寻他千百度,伊人却在灯火阑珊处其实PostgreSQL内置不少的工具,寻找的备份恢复方案就在其中:pg_dump,psql。这两个指令 在数据库的安装目录下,比如我自己本地安装的,路径形如:C:\Program Files\PostgreSQL\95\;然后进入到bin文件夹,会看到不少的exe文件,这就是PostgreSQL内置的工具了。里面会找到 pg_dumpexe,psqlexe两个文件。我们怎么用他们?

用法:

备份数据库,指令如下:

pg_dump -h 1648223354 -U postgres databasename > C:\databasenamebak

开始-运行-cmd d出dos控制台;然后 在控制台里,进入PostgreSQL安装目录bin下:

cd C:\Program Files\PostgreSQL\90\bin

最后执行备份指令:

pg_dump -h 1648223354 -U postgres databasename > C:\databasenamebak

指令解释:如上命令,pg_dump 是备份数据库指令,1648223354是数据库的ip地址(必须保证数据库允许外部访问的权限哦~),当然本地的数据库ip写 localhost;postgres 是数据库的用户名;databasename 是数据库名。> 意思是导出到C:\databasenamebak文件里,如果没有写路径,单单写databasenamebak文件名,那么备份文件会保存在C: \Program Files\PostgreSQL\90\bin 文件夹里。

恢复数据库,指令如下:

psql -h localhost -U postgres -d databasename < C:\databasenamebak(测试没有成功)

pg_restoreexe --host localhost --port 5432 --username "postgres" --dbname "symbolmcnew" --no-password --verbose "databasenamebackup"(测试成功)

指令解释:如上命令,psql是恢复数据库命令,localhost是要恢复到哪个数据库的地址,当然你可以写上ip地址,也就是说能远程恢复(必须保证 数据库允许外部访问的权限哦~);postgres 就是要恢复到哪个数据库的用户;databasename 是要恢复到哪个数据库。< 的意思是把C:\databasenamebak文件导入到指定的数据库里。

以上所有的是针对windows而言的,如果在linux下,会不会有效?

在linux里依然有效。有一个值得注意的是:如果直接进入PostgreSQL的安装目录bin下,执行命令,可能会出现 找不到pg_dump,psql的现象,我们在可以这样:

备份:

/opt/PostgreSQL/95/bin/pg_dump -h 1648223354 -U postgres databasename > databasenamebak

恢复:

/opt/PostgreSQL/95/bin/psql -h localhost -U postgres -d databasename < databasenamebak

以上就是关于Linux下移动了数据库 pgsql目录到另一个文件下,恢复后,启动服务提示无全部的内容,包括:Linux下移动了数据库 pgsql目录到另一个文件下,恢复后,启动服务提示无、pgsql使用case条件都不满足怎么去原值、如何备份和恢复VCSA 5.5自带的vPostgres数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9841185.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存