基于openEuler系统的MongoDB数据库搭建研究
- 远程工具连接
远程连接工具介绍
我们使用的远程连接工具是SecureCRT,SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。
SecureCRT支持SSH,同时支持Telnet和rlogin协议。SecureCRT是一款用于连接运行包括Windows、UNIX和VMS的理想工具。通过使用内含的VCP命令行程序可以进行加密文件的传输。有流行CRTTelnet客户机的所有特点,包括:自动注册、对不同主机保持不同的特性、打印功能、颜色设置、可变屏幕尺寸、用户定义的键位图和优良的VT100,VT102,VT220和ANSI竞争.能从命令行中运行或从浏览器中运行.其它特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等.SecureCRT的SSH协议支持DES,3DES和RC4密码和密码与RSA鉴别。
想要使用远程工具连接虚拟机,要先修改IP
vi /etc/sysconfig/network-scripts/ifcfg-ens33
把BOOTPROTO的参数该成static,防止开机自动分配IP
添加红框里的内容,IPADDR自行设置,不要与其它IP冲突即可
GATEWAY自行查看VMnet8的默认网关,如图二的默认网关
NETMASK为子网掩码,默认255.255.255.0
NDS1设置为114.114.114.114或者8.8.8.8,如图二的DNS服务器地址
设置好后保存退出
关闭防火墙,分别输入命令
service iptables stop #关闭防火墙
chkconfig iptables off #禁止开机启动
关闭selinux
vi /etc/selinux/config
修改SELINUX的参数改为disabled
保存退出并重启
reboot
打开远程连接工具,这里使用的是SecureCRT
点击该闪电形状的按钮
输入需要连接的虚拟机IP地址和root用户名,点击Connect
输入root密码,并Save password,点击OK,成功连接到虚拟机
-
单机安装MongoDB数据库
下载MongoDB数据包
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.23.tgz
如果主机上已经有MongoDB的数据包,可以上传,需要下载插件lrzsz
yum install lrzsz
安装后输入命令,找到数据包点击Add添加,然后点击OK等待上传完
rz
解压数据包
tar -zxvf mongodb-linux-x86_64-4.0.10.tgz
移动刚解压的数据包目录
mv mongodb-linux-x86_64-4.0.10 /usr/local/mongodb
创建数据存储目录和日志存储目录
mkdir -p /mongodb/single/data/db
mkdir -p /mongodb/single/log
新建并修改配置文件
vi /mongodb/single/mongod.conf
添加以下内容后保存退出
systemLog:
#MongoDB发送所有日志输出的目标指定为文件
# #The path of the log file to which mongod or mongos should send all diagnostic logging information
destination: file
#mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径
path: "/mongodb/single/log/mongod.log"
#当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾。
logAppend: true
storage:
#mongod实例存储其数据的目录。storage.dbPath设置仅适用于mongod。
##The directory where the mongod instance stores its data.Default Value is "/data/db".
dbPath: "/mongodb/single/data/db"
journal:
#启用或禁用持久性日志以确保数据文件保持有效和可恢复。
enabled: true
processManagement:
#启用在后台运行mongos或mongod进程的守护进程模式。
fork: true
net:
#服务实例绑定的IP,默认是localhost
bindIp: localhost,192.168.36.133
#bindIp #绑定的端口,默认是27017
port: 27017
注意要使用虚拟机的IP地址,port端口号默认27017
启动MongoDB服务
/usr/local/mongodb/bin/mongod -f /mongodb/single/mongod.conf
查看mongodb进程,可以看到已经启动
ps -ef | grep mongod
连接mongodb节点,成功连接节点说明安装成功
/usr/local/mongodb/bin/mongo --host=192.168.36.133 --port=27017
-
单机分片安装MongoDB 数据库
- 创建副本集:
准备存放数据和日志的目录:
mkdir -p /mongodb/sharded_cluster/myshardrs01_27018/log \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27018/data/db \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27118/log \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27118/data/db \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27218/log \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27218/data/db
新建或修改配置文件:
vi /mongodb/sharded_cluster/myshardrs01_27018/mongod.conf
vi /mongodb/sharded_cluster/myshardrs01_27118/mongod.conf
vi /mongodb/sharded_cluster/myshardrs01_27218/mongod.conf
启动副本集:一主一副本一仲裁
依次启动三个mongod服务:
/usr/local/mongodb/bin/mongod -f /mongodb/sharded_cluster/myshardrs01_27018/mongod.conf
/usr/local/mongodb/bin/mongod -f /mongodb/sharded_cluster/myshardrs01_27118/mongod.conf
/usr/local/mongodb/bin/mongod -f /mongodb/sharded_cluster/myshardrs01_27218/mongod.conf
查看服务是否启动:
初始化副本集和创建主节点:
使用客户端命令连接任意一个节点,但这里尽量要连接主节点:
/usr/local/mongodb/bin/mongo --host 192.168.85.143 --port 27018
执行初始化副本集命令:
rs.initiate()
主节点配置查看:rs.conf()
添加副本节点:rs.add("192.168.85.143:27118")
添加仲裁节点:rs.addArb("192.168.85.143:27218")
副本集的数据读写操作:
登录主节点27018:
/usr/local/mongodb/bin/mongo --host 192.168.85.143 --port 27018
show dbs
发现,不能读取集合的数据。当前从节点只是一个备份,不是奴隶节点,无法读取数据,
写当然更不行。 因为默认情况下,从节点是没有读写权限的,可以增加读的权限,但
需要进行设置。
rs.slaveOk()或rs.slaveOk(true)
提示: 该命令是 db.getMongo().setSlaveOk() 的简化命令。
创建配置服务器:
准备存放数据和日志的目录:
mkdir -p /mongodb/sharded_cluster/myconfigrs_27019/log \ &
mkdir -p /mongodb/sharded_cluster/myconfigrs_27019/data/db \ &
mkdir -p /mongodb/sharded_cluster/myconfigrs_27119/log \ &
mkdir -p /mongodb/sharded_cluster/myconfigrs_27119/data/db \ &
mkdir -p /mongodb/sharded_cluster/myconfigrs_27219/log \ &
mkdir -p /mongodb/sharded_cluster/myconfigrs_27219/data/db
vi /mongodb/sharded_cluster/myconfigrs_27019/mongod.conf
vi /mongodb/sharded_cluster/myconfigrs_27119/mongod.conf
vi /mongodb/sharded_cluster/myconfigrs_27219/mongod.conf
启动配置副本集:一主两副本
依次启动三个mongod服务:
/usr/local/mongodb/bin/mongod -f /mongodb/sharded_cluster/myconfigrs_27019/mongod.conf
/usr/local/mongodb/bin/mongod -f /mongodb/sharded_cluster/myconfigrs_27119/mongod.conf
/usr/local/mongodb/bin/mongod -f /mongodb/sharded_cluster/myconfigrs_27219/mongod.conf
查看服务是否启动:ps -ef |grep mongod
初始化副本集和创建主节点:
使用客户端命令连接任意一个节点,但这里尽量要连接主节点:
/usr/local/mongodb/bin/mongo --host 192.168.85.143 --port 27019
执行初始化副本集命令:
rs.initiate()
主节点配置查看:
rs.conf()
主节点配置查看:
rs.add(“192.168.85.143:27119”)
rs.add(“192.168.85.143:27219”)
查看副本集的配置情况:
rs.status()
创建路由节点:
准备存放数据和日志的目录:
mkdir -p /mongodb/sharded_cluster/mymongos_27017/log
新建或修改配置文件:
vi /mongodb/sharded_cluster/mymongos_27017/mongos.conf
启动mongos:
/usr/local/mongodb/bin/mongos -f /mongodb/sharded_cluster/mymongos_27017/mongos.conf
提示:启动如果失败,可以查看log目录下的日志,查看失败原因。
客户端登录mongos
/usr/local/mongodb/bin/mongo --host 192.168.85.143 --port 27017
在路由节点上进行分片配置操作:
添加分片:
sh.addShard(“myshardrs01/192.168.85.143:27018,192.168.85.143:27118,192.168.85.143:27218”)
开启分片功能:sh.enableSharding("库名")、sh.shardCollection("库名.集合名",{"key":1}) 在mongos上的articledb数据库配置sharding:
查看分片状态:
- 点赞
- 收藏
- 关注作者
评论(0)