189 8069 5689

MongoDB3.0的安装和部署-创新互联

这篇文章给大家分享的是MongoDB3.0的安装和部署的详细教程,相信大部分人都还不知道怎么部署,为了让大家学会,故而给大家总结了以下内容。

成都创新互联 - 成都服务器托管,四川服务器租用,成都服务器租用,四川网通托管,绵阳服务器托管,德阳服务器托管,遂宁服务器托管,绵阳服务器托管,四川云主机,成都云主机,西南云主机,成都服务器托管,西南服务器托管,四川/成都大带宽,服务器机柜,四川老牌IDC服务商

下载二进制包:
#wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.15.tgz
#tar xf mongodb-linux-x86_64-3.0.15.tgz
#cd mongodb-linux-x86_64-3.0.15
创建数据存放路径、日志存放路径、程序路径
#mkdir /data/mongodata -p
#mkdir /data/log/mongolog -p
#mkdir /data/mongo -p  
将当前所有文件复制
#cp -r * /data/mongo
配置环境变量
#more /etc/profile.d/mongodb.sh  
export PATH=$PATH:/data/mongo/bin
#source /etc/profile.d/mongodb.sh
配置mongodb配置文件
#cd /data/mongo/bin/
#vim mongodb.conf
#数据文件存放目录
dbpath = /data/mongodata
#日志文件存放目录
logpath = /data/log/mongolog/mongodb.log
#端口
port = 27017
#以守护程序的方式启用,即在后台运行
fork = true  
nohttpinterface = true
确定服务
#mongod --dbpath=/data/mongodata --logpath=/data/log/mongolog/mongodb.log --logappend --fork
通过配置文件启动
#mongod -f /root/mongodb/bin/mongodb.conf
测试
#mongo
MongoDB shell version: 3.0.15
connecting to: test

show dbs
local  0.078GB
quit()
WARNING: Readahead for /data/mongodata is set to 4096KB
WARNING: You are running this process as the root user, which is not recommended.
WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
We suggest setting it to 'never'
WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
We suggest setting it to 'never'
WARNING: soft rlimits too low. rlimits set to 3802 processes, 65536 files. Number of processes should be at least 32768 : 0.5 times number of files.
启动有警告,去掉

#vim /etc/rc.local
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
ulimit -u 65535
#echo never > /sys/kernel/mm/transparent_hugepage/enabled
#echo never > /sys/kernel/mm/transparent_hugepage/defrag
#runlevel
#chmod +x /etc/rc.local
文件限制数调整
#vim /etc/security/limits.conf

  • soft nproc 32000
  • hard nproc 32000
    重启:
    mongo

    use admin
    switched to db admin
    db.shutdownServer();
    配置启动服务
    #vim /usr/lib/systemd/system/systemd-mongodb.service
    [Unit]
    Description=mongodb
    After=network.target

[Service]
Type=forking
PIDFile=/data/mongodata/mongod.lock
ExecStart=/data/mongo/bin/mongod -f /data/mongo/bin/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target
开启机器
#systemctl enable systemd-mongodb
进入查看数据库,只有一个local库,admin库是不存在的

show dbs
local  0.078GB
show tables;
新建账号具有grant权限,即:账号管理的授权权限
use admin
switched to db admin
db.createUser(
... {
... user:"dba",
... pwd: "dba",
... roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
... }
... )
Successfully added user: {
"user" : "dba",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
show dbs;
admin  0.078GB
local  0.078GB
user:用户名

pwd:密码

roles:指定用户的角色,可以用一个空数组给新用户设定空角色;在roles字段,可以指定内置角色和用户定义的角色。role里的角色可以选:
Built-In Roles(内置角色):

  1. 数据库用户角色:read、readWrite;
  2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
  3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
  4. 备份恢复角色:backup、restore;
  5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
  6. 超级用户角色:root  
    // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
  7. 内部角色:__system
    具体角色:
    Read:允许用户读取指定数据库
    readWrite:允许用户读写指定数据库
    dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
    userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
    clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
    readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
    readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
    userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
    dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
    root:只在admin数据库中可用。超级账号,超级权限

Mongodb中 数据库和集合的创建与删除
插数据

show dbs  //查询所有的数据库
admin  0.078GB
cmz   0.078GB
local  0.078GB
show collections //查询所有的集合(表)等同于show tables
创建数据库或切换到数据库(存在就切换,不存在就创建)
use cmz
switched to db cmz
创建集合,删除集合(一般可以不用创造集合,在插入数据时自动可以创建集合):
db.createCollection('col')  //创建集合
{ "ok" : 1 }
show collections
col
db.col.drop()  //删除集合
true
5、备份
-h   指明数据库宿主机的IP
--port 指明数据库的端口
-u   指明数据库的用户名
-p   指明数据库的密码
-d   指明数据库的名字
-c   指明collection的名字
-o   指明到要导出的文件名
-q   指明导出数据的过滤条件
--authenticationDatabase  验证数据的名称
--gzip 备份时压缩
--oplog use oplog for taking a point-in-time snapshot
全库备份
mongodump -h 10.0.0.4 --authenticationDatabase admin -o /mnt/
备份cmz库
mongodump -h 10.0.0.4 --authenticationDatabase admin -d cmz -o /mnt1/
备份cmz库的col集合
mongodump -h 10.0.0.4 --authenticationDatabase admin -d cmz -c col -o /mnt2/

创建test库

use test
switched to db test
db.createUser(
... {
... user: "jrw",
... pwd: "jrw",
...  roles: [
...  { role: "readWrite", db: "test" }
... ]
... }
... )
Successfully added user: {
"user" : "jrw",
"roles" : [
{
"role" : "readWrite",
"db" : "test"
}
]
}
show users;
{
"_id" : "test.jrw",
"user" : "jrw",
"db" : "test",
"roles" : [
{
"role" : "readWrite",
"db" : "test"
}
]
}

看完这篇文章,你们学会MongoDB3.0的安装和部署方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读。

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站题目:MongoDB3.0的安装和部署-创新互联
文章来源:http://cdxtjz.cn/article/geigj.html

其他资讯