如何在MySQL Workbench 8.0 CE中导入PostgreSQL的TAR归档文件?
傻瓜式操作指南:PostgreSQL TAR备份转MySQL导入
核心前提说明
PostgreSQL的TAR归档是专属备份格式,不能直接用MySQL Workbench打开/导入,必须先恢复到PostgreSQL,再转成MySQL兼容的格式,分三步走:
第一步:把TAR备份恢复到PostgreSQL
1. 安装PostgreSQL(未安装的话)
- 下载对应系统的PostgreSQL安装包,安装时记好postgres用户的密码,还有安装目录里的
bin文件夹路径(比如Windows下的C:\Program Files\PostgreSQL\16\bin)。
2. 执行恢复命令
- 打开系统命令行(Win按Win+R输
cmd;Mac/Linux开终端) - 切换到PostgreSQL的
bin目录,比如Windows输入:cd "C:\Program Files\PostgreSQL\16\bin" - 运行恢复命令,替换
<你的备份文件.tar>为实际文件名,<新数据库名>随便起(比如my_postgres_db):pg_restore -U postgres -C -d postgres "<你的备份文件.tar>" - 输入之前设置的postgres密码,等待完成,TAR里的数据就会恢复到PostgreSQL的新数据库里。
第二步:导出成MySQL兼容的格式
方法1:导出为SQL文件(推荐,适合整库)
- 继续在PostgreSQL的
bin目录下,执行导出命令,替换<恢复的数据库名>为第一步起的名字,<导出的SQL文件.sql>为你要存的文件名:pg_dump -U postgres -d <恢复的数据库名> --no-owner --no-privileges -f "<导出的SQL文件.sql>" - 输入postgres密码,等待导出完成,得到的SQL文件就能给MySQL用了。
方法2:导出为CSV(适合单表,SQL导入报错时用)
- 打开PostgreSQL自带的
pgAdmin工具(安装时默认带),登录后找到恢复的数据库,展开「表」 - 右键目标表 → 「导出数据」→ 格式选CSV,设置保存路径,点导出,每个表重复操作。
第三步:用MySQL Workbench导入到MySQL
情况1:导入SQL文件
- 打开MySQL Workbench,连接你的MySQL数据库(没连接过就新建连接,输入root用户名和密码)
- 点顶部「Server」→「Data Import」
- 选「Import from Self-Contained File」,选中刚才导出的SQL文件
- 下方「Default Target Schema」选要导入的MySQL数据库(没有就点「New」创建)
- 点「Start Import」,等待完成。
情况2:导入CSV文件
- 先在MySQL里创建和PostgreSQL表结构一致的表(可以去pgAdmin里看PostgreSQL的表结构,复制后改改MySQL兼容的语法)
- 选中目标表 → 顶部「Table」→「Table Data Import Wizard」
- 选中CSV文件,跟着向导设置分隔符(默认逗号)、编码,完成导入。
关于你提到的「连接器」
网上说的连接器一般是ODBC这类跨数据库连接工具,用来直接同步数据,但对新手来说太复杂,上面的步骤用官方自带工具就能搞定,不用额外装连接器。
内容的提问来源于stack exchange,提问作者SkrtSkrt Yeet
相关产品推荐
相关产品推荐

