postgresql迁移到mysql

1.工具方法:Navicat Premium16

2. 手工方法:

迁移流程

下面是将 Postgresql 数据库迁移到 MySQL 的步骤流程:

步骤 描述
1. 创建MySQL表结构 在MySQL中创建与Postgresql中的表结构相同的表
2. 导出Postgresql数据 将Postgresql中的数据导出为SQL文件
3. 导入MySQL数据 将导出的SQL文件导入到MySQL数据库中
4. 验证迁移结果 验证数据是否成功迁移

下面将详细介绍每个步骤以及需要执行的代码。

步骤一:创建MySQL表结构

在这个步骤中,我们需要在 MySQL 数据库中创建与 Postgresql 数据库中表结构相同的表。

根据navicat等工具导出脚本,或者命令导出脚本修改成mysql支持的格式

pg_dump -d postgres -U postgres --schema-only >> mysql_table.ddl

脚本中注意替换双引号为·,修改int2,4为int,修改int8为bigint,去掉mysql不支持的一些pg参数等。 

步骤二:导出Postgresql数据

在这一步中,我们将从 Postgresql 数据库中导出数据,并将其保存为 SQL 文件。你可以使用以下命令来导出数据:

pg_dump -U username -d dbname -t table_name -f output_file.sql
pg_dump -d resdb-U gistar --schema-only >> gistar_meta.ddl
pg_dump -d resdb -U gistar --data-only >> gistar_data.ddl

其中,username 是 Postgresql 数据库的用户名,dbname 是要导出的数据库名称,table_name 是要导出数据的表名,output_file.sql 是导出的 SQL 文件路径和文件名。

步骤三:导入MySQL数据

在这一步中,我们将把导出的 SQL 文件导入到 MySQL 数据库中。你可以使用以下命令来导入数据:

mysql -u username -p -D dbname < input_file.sql

其中,username 是 MySQL 数据库的用户名,dbname 是要导入数据的数据库名称,input_file.sql 是导入的 SQL 文件路径和文件名。

查看进度的方式:

➜  pv -t -p dbpackfile.sql | mysql -uroot -ppass -D dbname
Warning: Using a password on the command line interface can be insecure.
0:02:28 [==========

步骤四:验证迁移结果

在完成数据导入后,我们需要验证迁移的结果是否正确。你可以使用 MySQL 客户端连接到 MySQL 数据库,并执行一些查询语句来验证数据的完整性和准确性。

mysql -u username -p -D dbname

然后,你可以执行一些查询语句来验证数据是否成功迁移,例如:

SELECT * FROM table_name;

请根据你的实际情况进行相应的验证。

猜你喜欢

转载自blog.csdn.net/jycjyc/article/details/135494515