Linux系统MongoDB安装与基础操作指南

需积分: 5 0 下载量 159 浏览量 更新于2024-10-07 收藏 6KB ZIP 举报
资源摘要信息:"MongoDB的Linux安装、基本操作" MongoDB是一款高性能、开源的NoSQL数据库系统,以其灵活性和扩展性在现代应用程序开发中得到了广泛应用。Linux用户可以通过简单的步骤完成MongoDB的安装,并进行基本的操作。 首先,我们需要了解MongoDB的基本概念。MongoDB是一个基于分布式文件存储的数据库,其设计思想是面向集合存储,易于扩展,支持各种数据类型,具有灵活的查询语言,并且支持丰富的索引功能。与传统的关系型数据库相比,MongoDB不需要预先定义表结构,并且能够存储更复杂的数据结构。 MongoDB支持的操作系统包括Windows、Linux、Mac OS X、Solaris和FreeBSD等。在Linux系统中安装MongoDB,通常可以通过包管理器或手动安装包的方式进行。 ### Linux下MongoDB的安装步骤: 1. **添加MongoDB的包管理系统源** 在Debian或Ubuntu系统中,可以通过以下命令添加MongoDB的官方APT仓库: ```bash echo "deb [ arch=amd64,arm64 ] *** $(lsb_release -cs)/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list ``` 对于Red Hat、CentOS系统,则可以使用以下命令添加MongoDB的YUM仓库: ```bash cat <<EOF | sudo tee /etc/yum.repos.d/mongodb-org-4.4.repo [mongodb-org-4.4] name=MongoDB Repository baseurl=***\$releasever/mongodb-org/4.4/x86_64/ gpgcheck=1 enabled=1 gpgkey=*** *** ``` 2. **安装MongoDB包** 添加仓库后,可以通过包管理器安装MongoDB: ```bash sudo apt-get update sudo apt-get install -y mongodb-org ``` 或者在Red Hat系列系统中: ```bash sudo yum install -y mongodb-org ``` 3. **启动MongoDB服务** 安装完成后,MongoDB服务通常不会自动启动,需要手动启动服务,并设置开机自启: ```bash sudo systemctl start mongod sudo systemctl enable mongod ``` 4. **验证MongoDB服务状态** 可以通过以下命令验证MongoDB服务是否正在运行: ```bash sudo systemctl status mongod ``` ### MongoDB的基本操作: 1. **连接到MongoDB服务** 使用mongo shell连接到本地MongoDB服务: ```bash mongo ``` 2. **数据库操作** - 查看当前所有数据库:`show dbs` - 切换数据库:`use [databaseName]` - 创建数据库:在插入数据时,如果数据库不存在,MongoDB会自动创建数据库 - 删除数据库:`db.dropDatabase()` 3. **集合操作** - 查看当前数据库中的所有集合:`show collections` - 创建集合:在插入文档时,如果集合不存在,MongoDB会自动创建集合 - 删除集合:`db.[collectionName].drop()` 4. **文档操作** - 插入文档:`db.[collectionName].insert(document)` - 查询文档:`db.[collectionName].find(query, projection)` - 更新文档:`db.[collectionName].update(query, update, options)` - 删除文档:`db.[collectionName].remove(query, justOne)` MongoDB的查询语言功能强大,支持多种查询选项,包括投影、排序和限制结果数量等。 ### 高级操作: - **索引** 索引用于提高查询效率,创建索引命令如下: ```bash db.[collectionName].createIndex(keys, options) ``` - **复制集** MongoDB支持通过复制集来实现数据的高可用性和故障转移。 - **分片** 当单个集合的数据量非常大时,可以使用分片技术将数据分布到多个服务器上。 ### 安全性: MongoDB提供了多种安全特性来保护数据,包括认证、授权、加密、网络隔离等。 ### 总结: MongoDB作为一款流行的NoSQL数据库,在Linux环境下的安装和基本操作相对简单。了解并掌握MongoDB的安装、管理和维护是进行现代应用开发和大数据处理的基础。这份指南为Linux用户提供了安装MongoDB和执行基本数据库操作的快速参考。

com.mongodb.MongoSocketOpenException: Exception opening socket at com.mongodb.internal.connection.SocketStream.open(SocketStream.java:70) ~[mongodb-driver-core-4.6.1.jar:na] at com.mongodb.internal.connection.InternalStreamConnection.open(InternalStreamConnection.java:180) ~[mongodb-driver-core-4.6.1.jar:na] at com.mongodb.internal.connection.DefaultServerMonitor$ServerMonitorRunnable.lookupServerDescription(DefaultServerMonitor.java:193) ~[mongodb-driver-core-4.6.1.jar:na] at com.mongodb.internal.connection.DefaultServerMonitor$ServerMonitorRunnable.run(DefaultServerMonitor.java:157) ~[mongodb-driver-core-4.6.1.jar:na] at java.lang.Thread.run(Thread.java:750) [na:1.8.0_371] Caused by: java.net.ConnectException: Connection refused: connect at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method) ~[na:1.8.0_371] at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81) ~[na:1.8.0_371] at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476) ~[na:1.8.0_371] at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218) ~[na:1.8.0_371] at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200) ~[na:1.8.0_371] at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162) ~[na:1.8.0_371] at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394) ~[na:1.8.0_371] at java.net.Socket.connect(Socket.java:606) ~[na:1.8.0_371] at com.mongodb.internal.connection.SocketStreamHelper.initialize(SocketStreamHelper.java:107) ~[mongodb-driver-core-4.6.1.jar:na] at com.mongodb.internal.connection.SocketStream.initializeSocket(SocketStream.java:79) ~[mongodb-driver-core-4.6.1.jar:na] at com.mongodb.internal.connection.SocketStream.open(SocketStream.java:65) ~[mongodb-driver-core-4.6.1.jar:na] ... 4 common frames omitted

2023-06-02 上传

为什么会这样[user_mongo@nosql01 replicaset]$ cd /opt [user_mongo@nosql01 opt]$ ll total 0 drwxr-xr-x. 3 root root 25 Mar 16 17:08 servers drwxr-xr-x. 2 root root 51 Mar 16 17:10 software [user_mongo@nosql01 opt]$ tar -zxvf /opt/software/mongodb-linux-x86_64-rhel70-4.4.12.tgz -C /opt/servers/mongodb_demo/replicaset/ mongodb-linux-x86_64-rhel70-4.4.12/LICENSE-Community.txt tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/LICENSE-Community.txt: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/MPL-2 tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/MPL-2: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/README tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/README: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/THIRD-PARTY-NOTICES tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/THIRD-PARTY-NOTICES: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/bin/install_compass tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/bin/install_compass: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/bin/mongo tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/bin/mongo: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/bin/mongod tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/bin/mongod: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/bin/mongos tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/bin/mongos: Cannot open: No such file or directory tar: Exiting with failure status due to previous errors [user_mongo@nosql01 opt]$ tar -zcvf /opt/software/mongodb-linux-x86_64-rhel70-4.4.12.tgz -C /opt/servers/mongodb_demo/replicaset/ tar: Cowardly refusing to create an empty archive Try `tar --help' or `tar --usage' for more information.

2023-06-01 上传