企业架构LNMP学习笔记55

MongoDB的安装和配置:

1、安装方式介绍:

yum安装方式:

手动通用安装方式:

2、二进制可执行安装:

下载路径:Download MongoDB Community Server | MongoDB

企业架构LNMP学习笔记55_第1张图片

 下载mongodb的源码包进行安装。

1)解压到安装目录并移动:

shell > tar xvf mongodb-linux-x86_64-rhel62-3.6.5.tgz
shell > mv mongodb-linux-x86_64-rhel62-3.6.5 /usr/local/mongodb


[root@server10 soft]# tar -zxvf mongodb-linux-x86_64-rhel62-3.6.5.tgz
mongodb-linux-x86_64-rhel62-3.6.5/README
mongodb-linux-x86_64-rhel62-3.6.5/THIRD-PARTY-NOTICES
mongodb-linux-x86_64-rhel62-3.6.5/MPL-2
mongodb-linux-x86_64-rhel62-3.6.5/GNU-AGPL-3.0
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongodump
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongorestore
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongoexport
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongoimport
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongostat
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongotop
mongodb-linux-x86_64-rhel62-3.6.5/bin/bsondump
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongofiles
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongoreplay
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongoperf
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongod
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongos
mongodb-linux-x86_64-rhel62-3.6.5/bin/mongo
mongodb-linux-x86_64-rhel62-3.6.5/bin/install_compass
[root@server10 soft]# ll
total 98236
drwxr-xr-x 3 root root        91 Sep 16 20:05 mongodb-linux-x86_64-rhel62-3.6.5
-rw-r--r-- 1 root root 100589678 Sep 16 20:04 mongodb-linux-x86_64-rhel62-3.6.5.tgz
[root@server10 soft]#
[root@server10 soft]# mv mongodb-linux-x86_64-rhel62-3.6.5 /usr/local/mongodb

2)创建数据存储目录和日志目录:

shell > cd /usr/local/mongodb
shell > mkdir data
shell > mkdir logs

3)启动mongod服务:

shell > cd /usr/local/mongodb/bin
shell > ./mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs/log.txt --fork

#可以通过进程和端口的方式检测是否启动成功
shell > ps aux|grep mongod
shell > netstat -lntp|grep mongod

企业架构LNMP学习笔记55_第2张图片

 端口是27017,为什么是127.0.0.1是本地,是为了安全。

[root@server10 bin]# ./mongod --help
Options:

General options:
  -h [ --help ]                         show this usage information
  --version                             show version information
  -f [ --config ] arg                   configuration file specifying
                                        additional options
  -v [ --verbose ] [=arg(=v)]           be more verbose (include multiple times
                                        for more verbosity e.g. -vvvvv)
  --quiet                               quieter output
  --port arg                            specify port number - 27017 by default
  --bind_ip arg                         comma separated list of ip addresses to
                                        listen on - localhost by default
  --bind_ip_all                         bind to all ip addresses
  --ipv6                                enable IPv6 support (disabled by
                                        default)
  --listenBacklog arg (=128)            set socket listen backlog size
  --maxConns arg                        max number of simultaneous connections
                                        - 1000000 by default
  --logpath arg                         log file to send write to instead of
                                        stdout - has to be a file, not
                                        directory
  --syslog                              log to system's syslog facility instead
                                        of file or stdout
  --syslogFacility arg                  syslog facility used for mongodb syslog
                                        message
  --logappend                           append to logpath instead of
                                        over-writing
  --logRotate arg                       set the log rotation behavior
                                        (rename|reopen)
  --timeStampFormat arg                 Desired format for timestamps in log
                                        messages. One of ctime, iso8601-utc or
                                        iso8601-local
  --pidfilepath arg                     full path to pidfile (if not set, no
                                        pidfile is created)
  --timeZoneInfo arg                    full path to time zone info directory,
                                        e.g. /usr/share/zoneinfo
  --keyFile arg                         private key for cluster authentication
  --noauth                              run without security
  --setParameter arg                    Set a configurable parameter
  --transitionToAuth                    For rolling access control upgrade.
                                        Attempt to authenticate over outgoing
                                        connections and proceed regardless of
                                        success. Accept incoming connections
                                        with or without authentication.
  --clusterAuthMode arg                 Authentication mode used for cluster
                                        authentication. Alternatives are
                                        (keyFile|sendKeyFile|sendX509|x509)
  --nounixsocket                        disable listening on unix sockets
  --unixSocketPrefix arg                alternative directory for UNIX domain
                                        sockets (defaults to /tmp)
  --filePermissions arg                 permissions to set on UNIX domain
                                        socket file - 0700 by default
  --fork                                fork server process
  --networkMessageCompressors [=arg(=disabled)] (=snappy)
                                        Comma-separated list of compressors to
                                        use for network messages
  --auth                                run with security
  --clusterIpSourceWhitelist arg        Network CIDR specification of permitted
                                        origin for `__system` access.
  --slowms arg (=100)                   value of slow for profile and console
                                        log
  --slowOpSampleRate arg (=1)           fraction of slow ops to include in the
                                        profile and console log
  --profile arg                         0=off 1=slow, 2=all
  --cpu                                 periodically show cpu and iowait
                                        utilization
  --sysinfo                             print some diagnostic system
                                        information
  --noIndexBuildRetry                   don't retry any index builds that were
                                        interrupted by shutdown
  --noscripting                         disable scripting engine
  --notablescan                         do not allow table scans
  --shutdown                            kill a running server (for init
                                        scripts)

Replication options:
  --oplogSize arg                       size to use (in MB) for replication op
                                        log. default is 5% of disk space (i.e.
                                        large is good)

Master/slave options (old; use replica sets instead):
  --master                              master mode
  --slave                               slave mode
  --source arg                          when slave: specify master as
                                        
  --only arg                            when slave: specify a single database
                                        to replicate
  --slavedelay arg                      specify delay (in seconds) to be used
                                        when applying master ops to slave
  --autoresync                          automatically resync if slave data is
                                        stale

Replica set options:
  --replSet arg                         arg is [/]
  --replIndexPrefetch arg               specify index prefetching behavior (if
                                        secondary) [none|_id_only|all]
  --enableMajorityReadConcern [=arg(=1)] (=1)
                                        enables majority readConcern

Sharding options:
  --configsvr                           declare this is a config db of a
                                        cluster; default port 27019; default
                                        dir /data/configdb
  --shardsvr                            declare this is a shard db of a
                                        cluster; default port 27018

SSL options:
  --sslOnNormalPorts                    use ssl on configured ports
  --sslMode arg                         set the SSL operation mode
                                        (disabled|allowSSL|preferSSL|requireSSL
                                        )
  --sslPEMKeyFile arg                   PEM file for ssl
  --sslPEMKeyPassword arg               PEM file password
  --sslClusterFile arg                  Key file for internal SSL
                                        authentication
  --sslClusterPassword arg              Internal authentication key file
                                        password
  --sslCAFile arg                       Certificate Authority file for SSL
  --sslCRLFile arg                      Certificate Revocation List file for
                                        SSL
  --sslDisabledProtocols arg            Comma separated list of TLS protocols
                                        to disable [TLS1_0,TLS1_1,TLS1_2]
  --sslWeakCertificateValidation        allow client to connect without
                                        presenting a certificate
  --sslAllowConnectionsWithoutCertificates
                                        allow client to connect without
                                        presenting a certificate
  --sslAllowInvalidHostnames            Allow server certificates to provide
                                        non-matching hostnames
  --sslAllowInvalidCertificates         allow connections to servers with
                                        invalid certificates
  --sslFIPSMode                         activate FIPS 140-2 mode at startup

Storage options:
  --storageEngine arg                   what storage engine to use - defaults
                                        to wiredTiger if no data files present
  --dbpath arg                          directory for datafiles - defaults to
                                        /data/db
  --directoryperdb                      each database will be stored in a
                                        separate directory
  --noprealloc                          disable data file preallocation - will
                                        often hurt performance
  --nssize arg (=16)                    .ns file size (in MB) for new databases
  --quota                               limits each database to a certain
                                        number of files (8 default)
  --quotaFiles arg                      number of files allowed per db, implies
                                        --quota
  --smallfiles                          use a smaller default file size
  --syncdelay arg (=60)                 seconds between disk syncs (0=never,
                                        but not recommended)
  --upgrade                             upgrade db if needed
  --repair                              run repair on all dbs
  --repairpath arg                      root directory for repair files -
                                        defaults to dbpath
  --journal                             enable journaling
  --nojournal                           disable journaling (journaling is on by
                                        default for 64 bit)
  --journalOptions arg                  journal diagnostic options
  --journalCommitInterval arg           how often to group/batch commit (ms)

WiredTiger options:
  --wiredTigerCacheSizeGB arg           maximum amount of memory to allocate
                                        for cache; defaults to 1/2 of physical
                                        RAM
  --wiredTigerJournalCompressor arg (=snappy)
                                        use a compressor for log records
                                        [none|snappy|zlib]
  --wiredTigerDirectoryForIndexes       Put indexes and data in different
                                        directories
  --wiredTigerCollectionBlockCompressor arg (=snappy)
                                        block compression algorithm for
                                        collection data [none|snappy|zlib]
  --wiredTigerIndexPrefixCompression arg (=1)
                                        use prefix compression on row-store
                                        leaf pages

 学会使用./mongod --help 查看选项。

企业架构LNMP学习笔记55_第3张图片

参数介绍:

dbpath 数据存储路径

logpath 日志存储路径  指向到一个文件

fork  后台启动

auth  权限开启

bind_ip  指定绑定网卡ip

fork是后台启动。这个要记住的。

目录不在不会创建,文件不在是需要创建的。

配置下环境变量:

vim /etc/profile

企业架构LNMP学习笔记55_第4张图片

然后再source /etc/profile操作下。

命令行客户端操作:

./mongo

[root@server10 bin]# ./mongo
MongoDB shell version v3.6.5
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.5
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
        http://docs.mongodb.org/
Questions? Try the support group
        http://groups.google.com/group/mongodb-user
Server has startup warnings:
2023-09-16T20:07:07.975+0800 I CONTROL  [initandlisten]
2023-09-16T20:07:07.975+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2023-09-16T20:07:07.975+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2023-09-16T20:07:07.975+0800 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2023-09-16T20:07:07.975+0800 I CONTROL  [initandlisten]
2023-09-16T20:07:07.975+0800 I CONTROL  [initandlisten] ** WARNING: This server is bound to localhost.
2023-09-16T20:07:07.975+0800 I CONTROL  [initandlisten] **          Remote systems will be unable to connect to this server.
2023-09-16T20:07:07.975+0800 I CONTROL  [initandlisten] **          Start the server with --bind_ip 
to specify which IP 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] ** addresses it should serve responses from, or with --bind_ip_all to 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] ** bind to all interfaces. If this behavior is desired, start the 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] ** server with --bind_ip 127.0.0.1 to disable this warning. 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'. 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never' 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'. 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never' 2023-09-16T20:07:07.975+0800 I CONTROL [initandlisten] >

输入help检查相关信息。 

企业架构LNMP学习笔记55_第5张图片

你可能感兴趣的:(mongodb,架构,mongodb)