在本地,我使用pgadmin3。然而,在远程服务器上,我没有这样的特权。
我已经创建了数据库备份并复制了它,但是是否有一种方法可以从命令行恢复备份?我只看到与GUI或pg_dumps相关的东西。
在本地,我使用pgadmin3。然而,在远程服务器上,我没有这样的特权。
我已经创建了数据库备份并复制了它,但是是否有一种方法可以从命令行恢复备份?我只看到与GUI或pg_dumps相关的东西。
当前回答
这招对我很管用:
pg_restore --verbose --clean --no-acl --no-owner --host=localhost --dbname=db_name --username=username latest.dump
其他回答
POSTGRESQL 9.1.12
转储文件:
pg_dump -U user db_name > archive_name.sql
输入用户密码并按enter键。
恢复:
psql -U user db_name < /directory/archive.sql
输入用户密码并按enter键。
如果您使用pg_dump创建了备份,您可以通过以下方式轻松地恢复它:
打开命令行窗口 进入Postgres bin文件夹。例如:cd "C:\ProgramFiles\PostgreSQL\9.5\bin" 输入恢复数据库的命令。例如:psql.exe -U postgres -d YourDatabase -f D:\Backup\.sql 输入postgres用户的密码 检查恢复进程
试试下面的命令是否能帮到你:
sudo su - yourdbuser
psql
\i yourbackupfile
备份= = >
选项1:在cmd中备份密码 1.PGPASSWORD="mypassword" pg_dump -U postgres -h localhost——insert mydb>mydb.sql 选项2:在cmd中进行无密码备份 2. pg_dump -U postgres -h localhost——插入mydb>mydb.sql Option3:以gzip格式备份(如果数据库很大) 3.pg_dump -U postgres -h localhost mydb——insert | gzip > mydb.gz
恢复: 1. psql -h localhost -d mydb -U postgres -p 5432 < mydb.sql
如果你有一个备份SQL文件,那么你可以很容易地恢复它。 只要按照下面给出的说明做就可以了
1. At first, create a database using pgAdmin or whatever you want (for example my_db is our created db name)
2. Now Open command line window
3. Go to Postgres bin folder. For example: cd "C:\ProgramFiles\PostgreSQL\pg10\bin"
4. Enter the following command to restore your database: psql.exe -U postgres -d my_db -f D:\Backup\backup_file_name.sql
如果需要,请为postgres用户输入密码,然后让postgres执行它的工作。查看恢复进程。