面向集合存储,易存储对象类型的数据。
模式自由。
支持动态查询。
支持完全索引,包含内部对象。
支持查询。
支持复制和故障恢复。
使用高效的二进制数据存储,包括大型对象(如视频等)。
自动处理碎片,以支持云计算层次的扩展性。
支持RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。
文件存储格式为BSON(一种JSON的扩展)。
vim /etc/yum.repos.d/mongodb-org.repo
[mongodb-org]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.as
yum install -y mongodb-org
systemctl start mongod.service #开启服务
systemctl start mongod.service #开启服务
[root@localhost ~]# mongo #进入数据库
MongoDB shell version v3.6.6
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.6
cp -p /etc/mongod.conf /etc/mongod2.conf
vim /etc/mongodb2.conf
systemLog:
destination: file
logAppend: true
path: /data/logs/mongod2.log #日志文件位置
.....
storage:
dbPath: /data/mongodb/mongodb2 #数据文件位置
journal:
......
net:
port: 27018 #修改端口号
bindIp: 127.0.0.1
mkdir -p /data/mongodb/mongodb2 #创建数据文件位置
mkdir -p /data/logs/ #创建日志文件位置
touch /data/logs/mongodb2.log #创建日志文件
chmod -R 777 /data/logs/mongodb2.log #添加日志文件的权限
[root@localhost ~]# mongod -f /etc/mongod2.conf #开启实例
about to fork child process, waiting until server is ready for connections.
forked process: 23824
child process started successfully, parent exiting
[root@localhost ~]# mongo --port 27018 #进入实例
MongoDB shell version v3.6.6
connecting to: mongodb://127.0.0.1:27018/
MongoDB server version: 3.6.6
[root@localhost ~]# mongod -f /etc/mongod2.conf --shutdown #关闭实例
killing process with pid: 23824
操作 | 描述 |
---|---|
show dbs | 查看当前实例下的数据库列表 |
show users | 显示用户 |
use <db_name> | 切换当前数据库 |
db.help() | 显示数据库操作命令 |
show collections | 显示当前数据库集合 |
db.foo.help() | 显示集合操作命令,foo 是当前数据库下的集合 |
db.foo.find() | 对当前数据库中foo集合进行数据查找 |
格式 : use DATABASE_NAME #切换数据库如果有切换,没有创建
mongos> use abc
switched to db abc
格式 : db.dropDatabase() #删除数据库
mongos> use abc
switched to db abc
mongos> db.dropDatabase()
{ "info" : "database does not exist", "ok" : 1 }
mongos> db.test.insert({"id":1,"name":"zhangsan"}) #在test集合插入数据 没有test集合默认会自动创建
WriteResult({ "nInserted" : 1 })
mongos> db.test.insert({"id":2,"name":"lisi"})
WriteResult({ "nInserted" : 1 })
mongos> db.test.find() #查看集合内容
{ "_id" : ObjectId("5b4eb95659122739e2695613"), "id" : 1, "name" : "zhangsan" }
{ "_id" : ObjectId("5b4eb96759122739e2695614"), "id" : 2, "name" : "lisi" }
mongos> db.test.remove({"id":1}) #删除test集合中的id为1的数据
WriteResult({ "nRemoved" : 1 })
mongos> db.test.find()
{ "_id" : ObjectId("5b4eb96759122739e2695614"), "id" : 2, "name" : "lisi" }
mongos> db.test.update({"id":2},{$set:{"name":"wangwu"}}) #修改数据
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
mongos> db.test.find()
{ "_id" : ObjectId("5b4eb96759122739e2695614"), "id" : 2, "name" : "wangwu" }
[root@localhost bin]# ./mongoexport -d abc -c test -o /opt/test.json #导出文件格式为json
2018-07-18T12:07:50.297+0800 connected to: localhost
2018-07-18T12:07:50.299+0800 exported 2 records
[root@localhost bin]# ./mongoimport -d abc -c test --file test.json #导入数据库
2018-07-18T12:09:09.880+0800 Failed: open test.json: no such file or directory
2018-07-18T12:09:09.881+0800 imported 0 documents
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。