MongoDB数据库迁移及CentOS之间传送文件案例一则
Posted 肖永威
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB数据库迁移及CentOS之间传送文件案例一则相关的知识,希望对你有一定的参考价值。
我有台计算机上运行MongoDB数据库,由于工作要求让出此台计算机,需要把数据库迁移到另外一台计算机。两台计算机都是Linux操作系统CentOS 7,MongoDB为社区版5.0.3。
MongoDB数据库迁移方案
两台计算机上的MongoDB的部署及配置一样,目录结构如下:
[python@bogon mongodb]$ ls -l /usr/local/mongodb
total 132
drwxr-xr-x. 2 root root 70 May 27 2022 bin
lrwxrwxrwx. 1 root root 25 May 31 2022 data -> /home/python/mongodb/data
drwxr-xr-x. 2 root root 26 May 27 2022 etc
-rw-r--r--. 1 root root 30608 Sep 20 2021 LICENSE-Community.txt
drwxr-xr-x. 2 root root 103 Jul 8 2022 log
-rw-r--r--. 1 root root 16726 Sep 20 2021 MPL-2
-rw-r--r--. 1 root root 1977 Sep 20 2021 README
-rw-r--r--. 1 root root 76823 Sep 20 2021 THIRD-PARTY-NOTICES
其中,“data”目录是存储数据的目录,完全迁移此目录即可。(补充:此目录是个软连接,因为原有的分区不够了,连接到另一个大的分区上)
首先,关闭数据库
# 1、登录数据库
[mongo@redhatB data]$ mongo
# 2、关闭 MongoDB 服务
> use admin;
switched to db admin
> db.shutdownServer();
其次,切换到root用户下,压缩文件及拷贝文件。
# 压缩目录及文件
[root@bogon mongodb]# tar jcvf /home/python/mongodb/data.tar.bz2 /home/python/mongodb/data
# 从源计算机(192.168.17.13)拷贝压缩文件到目标计算机(192.168.19.229)
[root@bogon mongodb]# scp /home/python/mongodb/data.tar.bz2 root@192.168.19.229:/home/python/mongodb
root@192.168.19.229's password:
data.tar.bz2 100% 6331MB 9.8MB/s 10:43
注,scp命令行,前面的是源主机(有压缩文件)。
接着,解压文件,拷贝数据文件夹到mongodb主目录下。
# 解压文件
[root@DeepLearning mongodb]# tar -xvjf data.tar.bz2
# 拷贝文件到mongodb
[root@DeepLearning mongodb]# mv home/python/mongodb/data data
# 查看目录结构
[root@DeepLearning mongodb]# ls -l /usr/local/mongodb
总用量 136
drwxr-xr-x. 2 root root 70 10月 8 2021 bin
lrwxrwxrwx. 1 root root 25 11月 13 2021 data -> /home/python/mongodb/data
drwxr-xr-x. 2 root root 26 5月 27 2022 etc
-rw-r--r--. 1 root root 30608 9月 20 2021 LICENSE-Community.txt
drwxr-xr-x. 2 root root 4096 6月 8 2022 log
-rw-r--r--. 1 root root 16726 9月 20 2021 MPL-2
-rw-r--r--. 1 root root 1977 9月 20 2021 README
-rw-r--r--. 1 root root 76823 9月 20 2021 THIRD-PARTY-NOTICES
在目标计算机上启动MongoDB数据库。
mongod --config /usr/local/mongodb/etc/mongodb.conf
最后,在目标计算机上删除压缩包和无用的文件夹。
[root@DeepLearning mongodb]# ls -l
总用量 6482648
drwxr-xr-x. 4 root root 4096 2月 7 11:05 data
drwxr-xr-x. 3 root root 8192 6月 8 2022 data.old
-rw-r--r--. 1 root root 6638213312 2月 7 11:45 data.tar.bz2
drwxr-xr-x. 3 root root 20 2月 7 11:48 home
删除data.tar.bz2压缩文件和home文件夹。
[root@DeepLearning mongodb]# rm -R home
rm:是否进入目录"home"? y
rm:是否进入目录"home/python"? y
rm:是否删除目录 "home/python/mongodb"?y
rm:是否删除目录 "home/python"?y
rm:是否删除目录 "home"?y
[root@DeepLearning mongodb]# rm data.tar.bz2
rm:是否删除普通文件 "data.tar.bz2"?y
参考内容如下:
参考原文连接,两台centos之间传送文件。
以上是关于MongoDB数据库迁移及CentOS之间传送文件案例一则的主要内容,如果未能解决你的问题,请参考以下文章