迁移mysql8.x数据到monggodb数据库

因流量逐步增加随即数据库要从mysql换成monggodb,所以有了数据迁移的需求

首先需要导出mysql的数据,导出格式为.CSV的文件

使用navicat链接mysql数据库注意,需要使用拥有所有权限的用户

登录mysql

mysql -u root -pZxcvbnm@2024

CREATE USER 'slave'@'%' IDENTIFIED BY 'Zxcvbnm@2024';   创建用户

GRANT ALL PRIVILEGES ON *.* TO slave; 授权最高权限

登录navicat链接mysql数据库

在navicat登录mysql后根据需求导出对应的表

导入monggodb的话需要CSV文件

到这mysql的数据就导出完成了,下面是导入monggodb的操作

首先注意monggodb默认关闭了ipv6的链接,我这里使用的是monggodb5.0.19版本

部署monggodb单节点文档有需要的可以看看

Monggodb单节点快速部署_mongodb单节点部署-CSDN博客

如果直接使用monggodb链接navicat会报错

Xsuitable servers found : serverselectiontimeoutms expired : [ connection refused calling ismasterEARE    原因是monggodb默认没有开启ipv6

首先我们需要创建monggodb的配置文件开启支持ipv6通信

vim /data/mongodb/mongod.conf

storage:

  dbPath: /data/mongodb/data   #数据存放目录

net:

  port: 27017 #monggodb使用的端口

  bindIp: 0.0.0.0 #支持任意ipv4地址访问

  ipv6: true #开启ipv6

然后重新启动monggodb即可

mongod --dbpath /data/mongodb/data/ --logpath /data/mongodb/log/mongod.log --fork --config /data/mongodb/mongod.conf

然后再次使用navicat链接monggodb即可

在导入数据前我们需要手动创建需要用到的库

mongo             登录monggo  

use test 创建test库

在navicat登录monggodb后根据需求导入对应的表

注意从 CSV 文件导入数据到 MongoDB 时,如果 CSV 文件中没有提供任何字段作为 _id,MongoDB 就会自动生成一个唯一的 _id 值这个自动生成的 _id 字段不会影响使用 MongoDB 数据

到这数据就迁移完成了,多个表重复以上操作即可。

登录mongodb

查看所有库  show dbs

查看库里所有表 show tables

注意生产环境可以增加一下步骤

先把mysql需要迁移的表使用navicat导出cvs文件。

在虚拟机部署一个monggodb,使用navicat导入mysql的cvs文件。(注意导入前需要先创建对应库,按照库名导入)

导入完所有数据后,在monggodb虚拟机上备份monggodb实例

mongodump --host 192.168.197.138 --port 27017 --username obradmin --password Zxcvbnm@2023 --out /data  备份整个monggodb实例命令

在把备份的monggodb的.bson文件恢复到对应环境中。

mongorestore --db test error_log.bson  

使用mongodump、mongorestore 报错没有可执行文件的话可以使用yum下载一个mongodb然后拷贝这个执行文件到/data/mongdb/bin目录下

  • 24
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值