
正文
pg数据库移植,sql数据库移植
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
postgresql的数据库怎么迁移到mysql-CSDN论坛
MySQL数据库迁移到PostgreSQL
查了不少资料,也尝试了一些,最后采用的办法如下:
1. 导出mysql表定义(无数据)
mysqldump --no-data [dbname] dbdef.sql
2. 使用mysql2postgres把脚本转换为pgsql
3. 上面生成的脚本还不一定很完美,可以尝试导入pgsql,调试错误并手动修改之。我遇到的问题就只有一个,mysql列定义中的zerofill需要手工去掉。一些unsinged定义会生成constraint,如果不需要可以去掉。另外,trigger都有问题,只能后面手工重建
4. 导出mysql数据:
mysqldump -v -nt --complete-insert=TRUE --compact --no-create-info --skip-quote-names [dbname] dbdata.sql
老一些版本的pgsql如果不支持批量插入的话还需要加上--extended-insert=FALSE,这个性能损失巨大。
5. 转义符
mysql默认字符串里的'\'是转义符,而pgsql默认不是,修改postgresql.conf:
backslash_quote = on
escape_string_warning = off
standard_conforming_strings = off
数据导入完成后可以改回默认值。
5. pgsql里导入表定义和数据
psql -d [dbname] dbdef.sql
psql -d [dbname] dbdata.sql
6. 重建trigger
7. 自增主键(字段)的处理
由于导入数据时此字段都是有值的,所以pgsql里面seq并不会增加,可以用如下语句设置自增列的当前值:
SELECT setval('sample_id_seq',max(id)) from sample;
相关问答
Q1: 数据库搬家教程?
以下是数据库搬迁的基本教程:
1.备份原数据库:在开始搬迁数据库之前,请务必对原数据库进行备份,以防止数据丢失或损坏。
2.创建新数据库:在新服务器或存储设备上创建一个新数据库,并设置相应的权限。如果需要,在新数据库中创建相应的表和索引。
3.迁移数据:将备份的数据库文件导入到新数据库中。具体的导入方式可以根据数据库类型和版本选择不同的工具和方法。
4.测试新数据库:将新数据库连接到应用程序中,并进行测试以确保数据被正确地迁移并且应用程序能够正常工作。
5.更新应用程序配置:如果需要,更新应用程序的配置文件,以便它可以连接到新数据库。
6.监控新数据库:在完成数据库搬迁之后,需要对新的数据库进行监控和维护,以保证其正常运行和性能。
需要注意的是,数据库搬迁是一个较为复杂的过程,需要谨慎操作。在进行数据库搬迁之前,应该做好充分的备份和测试工作,并根据具体情况选择适当的工具和方法。如果您不确定如何搬迁,建议咨询专业的数据库管理员或者技术支持人员,以获得更好的帮助和指导。
同时,以下是一些常见的数据库搬迁工具和方法:
1. MySQL Workbench:MySQL Workbench 是一个流行的 MySQL 数据库管理工具,它提供了一种简单易用的方式来备份和恢复 MySQL 数据库。
2. pg_dump:pg_dump 是 PostgreSQL 数据库的备份工具,它可以将整个数据库或特定的表备份到文件中。
3. Oracle Data Pump:Oracle Data Pump 是 Oracle 数据库的备份和恢复工具,它可以将整个数据库或特定的表备份到文件中。
4. AWS Database Migration Service:AWS Database Migration Service 是一个云数据库迁移服务,可以将数据库从一个源数据库引擎迁移到另一个目标数据库引擎。
5. Azure Database Migration Service:Azure Database Migration Service 是 Microsoft Azure 中的数据库迁移服务,可以将数据库从一个源数据库引擎迁移到另一个目标数据库引擎。
总之,数据库搬迁需要仔细规划和准备,选择合适的工具和方法可以使迁移过程更加顺利和高效。
Q2: postgresql从一个数据库转到另一个数据库有没有方便的方法?
Postgresql不支持跨数据库操作。
可以通过pg_dump加上pg_restore或psql来完成迁移,或者直接使用sql语句中的copy语句来完成数据的迁移。
pg数据库移植的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于sql数据库移植、pg数据库移植的信息别忘了在本站进行查找喔。






