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

文章目录

    • 前言
    • 1. MySQL
      • 1.1 Windows 10环境下操作方法
      • 1.2 CentOS 8环境下操作方法
    • 2. MongoDB
      • 2.1 Windows 10环境下操作方法
      • 2.2 CentOS 8环境下操作方法
    • 结束语

前言

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

1. MySQL

1.1 Windows 10环境下操作方法

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

Windows 10环境下如何将MySQL 8.0和MongoDB 4.4数据库迁移至CentOS 8系统中_第1张图片
  然后将.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

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

  在恢复的过程中有可能会出现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,但是我搜索了一下我的安装路径,发现不存在。
Windows 10环境下如何将MySQL 8.0和MongoDB 4.4数据库迁移至CentOS 8系统中_第3张图片
  百度了一下说相关工具还需要在单独的下载,可以直接去官网下载,下载的是一个压缩包,解压后相关的工具如下:
Windows 10环境下如何将MySQL 8.0和MongoDB 4.4数据库迁移至CentOS 8系统中_第4张图片
  然后将其复制到MongoDB的安装路径下,我的是D:\Program Files\MongoDB\Server\4.4\bin
Windows 10环境下如何将MySQL 8.0和MongoDB 4.4数据库迁移至CentOS 8系统中_第5张图片
  然后打开cmd,执行如下命令:

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

  会生成一个名为weibo的文件夹:
Windows 10环境下如何将MySQL 8.0和MongoDB 4.4数据库迁移至CentOS 8系统中_第6张图片
  然后将其上传到服务器上。

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/

Windows 10环境下如何将MySQL 8.0和MongoDB 4.4数据库迁移至CentOS 8系统中_第7张图片
  如果是华为云服务器,就有一点点麻烦,由于架构不一样,所以需要下载指定的arm64版本的安装包,具体就百度一下吧,哈哈哈哈哈。
  百度云服务器也可以,就是命令终端太low了,就没很少用了。

结束语

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

你可能感兴趣的:(基础配置,linux,centos,数据库,mysql,mongodb)