Windows 10环境下如何将MySQL 8.0和MongoDB 4.4数据库迁移至CentOS 8系统中

本文详细记录了如何将Windows10上的MySQL8.0和MongoDB4.4数据库迁移到CentOS8系统的过程。涉及MySQL的数据导出、编码问题解决及数据导入,以及MongoDB的备份与恢复操作。在迁移过程中需注意不同系统环境下的安装步骤和命令差异,以及可能出现的编码问题。
摘要由CSDN通过智能技术生成

前言

  本文记录一下如何将Windows 10系统中的MySQL 8.0和MongoDB 4.4数据库迁移至CentOS 8系统中。

1. MySQL

1.1 Windows 10环境下操作方法

  打开 MySQL Workbench 8.0 CE,然后依次Server-->Data Export

在这里插入图片描述
  然后将.sql脚本文件上传到服务器上,比如/data/weibo_data.sql

1.2 CentOS 8环境下操作方法

  首先要保证服务器上安装了MySQL,具体版本无所谓。

	# 安装最新的mysql版本,可以使用dnf(确保已安装)
	sudo dnf install @mysql
	
	# 如果想安装指定版本,可以按照以下方式进行安装
	# 下载MySQL官方的 Yum Repository
	wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
	# 安装
	yum -y install mysql57-community-release-el7-10.noarch.rpm
	yum -y install mysql-community-server

	# 启动MySQL
	systemctl start mysqld.service
	# 查看是否启动
	systemctl status mysqld.service

	# 如果是8.0以上的版本,默认密码为空,输入密码时直接回车就可以
	# 如果是其他版本,比如5.7,可以通过以下命令找到密码
	grep "password" /var/log/mysqld.log

	# 进入数据库
	mysql -u root –p
	# 更改密码
	ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

  然后创建与Windows 10环境下MySQL数据库中同名的数据库,比如我的MySQL数据库中的数据库名为weibo

	# 创建同名数据库weibo
	create database weibo;
	# 执行.sql脚本恢复数据
	use test;
	set names utf8;
	source /data/weibo_data.sql

在这里插入图片描述

  在恢复的过程中有可能会出现ERROR 1273 (HY000): Unknown collation: 'utf8mb4_0900_ai_ci的错误提示,这是因为编码出现了异常,做一下更改即可解决:

  1. 找到.sql脚本文件并打开,比如我的是/data/weibo_data.sql
  2. 将文件中所有的utf8mb4_0900_ai_ci替换为utf8_general_ci
  3. 将文件中所有的utf8mb4替换为utf8
  4. 再次执行source /data/weibo_data.sql

  然后可以查一下数据是否正确:

	show tables;
	# yaowen是weibo数据库中的一个表
	select * from yaowen;

2. MongoDB

2.1 Windows 10环境下操作方法

  MongoDB数据库的备份与恢复可以使用mongodumpmongorestore,但是我搜索了一下我的安装路径,发现不存在。

在这里插入图片描述
  百度了一下说相关工具还需要在单独的下载,可以直接去官网下载,下载的是一个压缩包,解压后相关的工具如下:

在这里插入图片描述
  然后将其复制到MongoDB的安装路径下,我的是D:\Program Files\MongoDB\Server\4.4\bin

在这里插入图片描述
  然后打开cmd,执行如下命令:

	# mongodump -d 数据库 -o 文件输出路径
	mongodump -d weibo -o E:\Program\Python\Django\WeiBo\static\data

  会生成一个名为weibo的文件夹:

在这里插入图片描述
  然后将其上传到服务器上。

2.2 CentOS 8环境下操作方法

  首先要保证服务器上安装了MongoDB。
  如果是腾讯云,阿里云之类的可以直接使用如下命令进行安装:

	# 创建一个新的存储库文件来启用MongoDB存储库
	sudo vim /etc/yum.repos.d/mongodb-org.repo
	
	# 写入内容
	[mongodb-org-4.4]
	name=MongoDB Repository
	baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
	gpgcheck=1
	enabled=1
	gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc

	# 保存并退出
	esc		:wq

	# 安装
	sudo yum install mongodb-org

	# 启动
	sudo systemctl start mongod

  然后直接使用mongorestore命令恢复数据:

	mongorestore -d weibo /data/weibo/

在这里插入图片描述
  如果是华为云服务器,就有一点点麻烦,由于架构不一样,所以需要下载指定的arm64版本的安装包,具体就百度一下吧,哈哈哈哈哈。
  百度云服务器也可以,就是命令终端太low了,就很少用了。

结束语

  本次是毕设项目部署时的一次记录,由于抓取的数据都存在了本地的数据库上,为了方便答辩时演示,就将项目迁移到了服务器上。在迁移过程中也是遇到了诸多问题,比如数据库版本问题、系统架构问题以及相关数据库的备份与数据库的命令等等,经过一番百度也算是有所了解,继续努力!!!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏小悠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值