MySQL迁移到pgsql中

参考链接:
https://www.cnblogs.com/java365/articles/17789520.html

我是用centos7.9才实现的,公司arm架构的弄了半天没弄起来,最后虚拟机搞了个centos就好了。

cd /usr/local
tar -zxvf pgloader-3.6.9.tar.gz
cd pgloader-3	.6.9/
chmod 755 bootstrap-centos.sh

#需要下载很多关联插件
./bootstrap-centos.sh

#先package打包,后还要下载一些资源包#此版本打包时,需要用到 openSSL11 版本的 so 库,#如果有提示到 ("libcrypto.so.1.1" "libcrypto.so.1.0.0" "libcrypto.so.3" "libcrypto.so") 相关信息,#需要先执行一下 yum -y install openssl openssl-devel ,再重新 make 。
make pgloader#复制执行文件到用户本地执行目录cp build/bin/pgloader /usr/local/bin/#查看版本pgloader --version

如果出现类似情况:

在这里插入图片描述

临时解决:

另外开窗口执行:
SBCL_HEAP_SIZE=4096 sbcl

在这里插入图片描述
这是gpt的解释:
在这里插入图片描述
GitHub社区有大佬扯半天,没看懂,感兴趣的可以looklook:
https://github.com/dimitri/pgloader/issues/327

最后开始执行命令迁移

#MySQL对应的用户、密码,数据据地址和对应的库,
#PostgreSQL 对应的用户、密码,数据据地址和对应的库。
#此操作的全库数据库表转换,包含全部数据,无法单独选择某些表。#导入的数据,会在当前数据库下,建新的同名模式(Schema)方式生成。#如果遇到账户名或密码中有特殊字符,比如 @ 符号,则需要用在特殊字符之后,多加一个@来进行标记。#比如原来的密码是root@123,则在 pgloader 的命令行里,就成了 root@@123 。
pgloader mysql://user:password@localhost:port/dbName postgresql://user:password@localhost:5432/dbName

如果报错mysql连接失败问题,需要添加认证插件mysql_native_password
一般在my.cnf配置文件中添加:

default-authentication-plugin=mysql_native_password

在这里插入图片描述

最后Maven项目中怎么连接pgsql

# 数据源配置
  datasource:
    dynamic:
      # 设置默认的数据源或者数据源组, 默认值即为master
      primary: master
      # 严格匹配数据源, 默认false. true未匹配到指定数据源时抛异常, false使用默认数据源
      strict: false
      datasource:
        #master:
        # url: jdbc:mysql://localhost:3306/DBname?verifyServerCertificate=false&useSSL=false&requireSSL=false&useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&autoReconnect=true&allowPublicKeyRetrieval=true
        # username: root
        # password: 
        #slave_1:
        # url: jdbc:mysql://localhost:3306/DBname?verifyServerCertificate=false&useSSL=false&requireSSL=false&useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&autoReconnect=true&allowPublicKeyRetrieval=true
        # username: root
        # password: 
        master:
          url: jdbc:postgresql://localhost:5432/demo03
          username: postgres
          password: 
          driver-class-name: org.postgresql.Driver
        slave_1:
          url: jdbc:postgresql://localhost:5432/demo03
          username: postgres
          password: 
          driver-class-name: org.postgresql.Driver
      # 数据库连接池配置
      hikari:
        min-idle: 5
        idle-timeout: 600000
        max-pool-size: 10
        is-auto-commit: true
        max-lifetime: 1800000
        connection-timeout: 30000
        connection-test-query: SELECT 1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值