备份数据库
命令行不带密码
要备份一个 PostgreSQL 数据库,可以使用 pg_dump
命令。以下是一般步骤:
- 打开命令行(例如 Terminal 或者 CMD),确保 PostgreSQL 的二进制文件目录已经添加到环境变量中,或者直接进入到 PostgreSQL 的二进制文件目录。
- 使用
pg_dump
命令备份数据库,语法如下:
pg_dump -U [用户名] -W -F t [数据库名] > [输出文件路径]
其中:
[用户名]
:用于连接数据库的用户名[数据库名]
:要备份的数据库名称[输出文件路径]
:指定备份文件保存的路径,通常使用.tar
文件格式
例如,要备份名为 "mydb" 的数据库,用户名为 "postgres",并将备份文件保存到 "mydb_backup.tar",可以使用以下命令:
pg_dump -U postgres -W -F t mydb > mydb_backup.tar
- 当提示输入密码时,输入相应用户的密码。
- 等待命令执行完毕。成功完成后,备份文件将保存在指定的路径。
请注意,根据数据库大小,备份过程可能需要一些时间。完成后,可以将备份文件存储在安全的位置,以便在需要时进行恢复。
命令行带密码
PGPASSWORD=[密码] pg_dump -h [主机名] -p [端口] -U [用户名] -W -F t [数据库名] > [输出文件路径]
其中:
[密码]
:用于连接数据库的密码[主机名]
:数据库服务器的主机名或 IP 地址[端口]
:数据库服务器上 PostgreSQL 服务所使用的端口号[用户名]
:用于连接数据库的用户名[数据库名]
:要备份的数据库名称[输出文件路径]
:指定备份文件保存的路径,通常使用.tar
文件格式
例如,要备份名为 "mydb" 的数据库,用户名为 "postgres",密码为 "my_password",主机名为 "localhost",端口为 "5432",并将备份文件保存到 "mydb_backup.tar",可以使用以下命令:
PGPASSWORD=my_password pg_dump -h localhost -p 5432 -U postgres -W -F t mydb > mydb_backup.tar
这个命令将使用提供的用户名、密码、主机名和端口连接到 PostgreSQL 数据库,并将其备份到指定的输出文件路径。注意,在这个示例中,-W
选项已经包含在命令中,但由于我们已经设置了 PGPASSWORD
环境变量,实际上不需要这个选项。您可以根据自己的需要选择保留或删除该选项。