> > exit() 2019-02-01T15:44:26.624+0000 E QUERY [js] ReferenceError: exit is not defined : @(shell):1:1 > > > exit bye # exit ┌─[✗]─[kristjan@k-arch]─[/home/kristjan/Desktop/workdir] └──╼ $ ┌─[✗]─[kristjan@k-arch]─[/home/kristjan/Desktop/workdir] └──╼ $ ┌─[✗]─[kristjan@k-arch]─[/home/kristjan/Desktop/workdir] └──╼ $clear ┌─[kristjan@k-arch]─[/home/kristjan/Desktop/workdir] └──╼ $ ┌─[kristjan@k-arch]─[/home/kristjan/Desktop/workdir] └──╼ $docker exec -it mng3_mongo.1.tz20az7xgqjhu4nxzokcifeyz /bin/sh # mongo MongoDB shell version v4.0.5 connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb Implicit session: session { "id" : UUID("37ea3984-719e-4381-b5da-806ef3fac970") } MongoDB server version: 4.0.5 > exit bye # # mongo -admin root -password example Error parsing command line: unrecognised option '-admin' try 'mongo --help' for more information # # mongo -h MongoDB shell version v4.0.5 usage: mongo [options] [db address] [file names (ending in .js)] db address can be: foo foo database on local machine 192.168.0.5/foo foo database on 192.168.0.5 machine 192.168.0.5:9999/foo foo database on 192.168.0.5 machine on port 9999 Options: --shell run the shell after executing files --nodb don't connect to mongod on startup - no 'db address' arg expected --norc will not run the ".mongorc.js" file on start up --quiet be less chatty --port arg port to connect to --host arg server to connect to --eval arg evaluate javascript -h [ --help ] show this usage information --version show version information --verbose increase verbosity --ipv6 enable IPv6 support (disabled by default) --disableJavaScriptJIT disable the Javascript Just In Time compiler --enableJavaScriptJIT enable the Javascript Just In Time compiler --disableJavaScriptProtection allow automatic JavaScript function marshalling --ssl use SSL for all connections --sslCAFile arg Certificate Authority file for SSL --sslPEMKeyFile arg PEM certificate/key file for SSL --sslPEMKeyPassword arg password for key in PEM file for SSL --sslCRLFile arg Certificate Revocation List file for SSL --sslAllowInvalidHostnames allow connections to servers with non-matching hostnames --sslAllowInvalidCertificates allow connections to servers with invalid certificates --sslFIPSMode activate FIPS 140-2 mode at startup --sslDisabledProtocols arg Comma separated list of TLS protocols to disable [TLS1_0,TLS1_1,TLS1_2] --retryWrites automatically retry write operations upon transient network errors --disableImplicitSessions do not automatically create and use implicit sessions --jsHeapLimitMB arg set the js scope's heap size limit Authentication Options: -u [ --username ] arg username for authentication -p [ --password ] arg password for authentication --authenticationDatabase arg user source (defaults to dbname) --authenticationMechanism arg authentication mechanism --gssapiServiceName arg (=mongodb) Service name to use when authenticating using GSSAPI/Kerberos --gssapiHostName arg Remote host name to use for purpose of GSSAPI/Kerberos authentication file names: a list of files to run. files have to end in .js and will exit after unless --shell is specified #^[[A^[[A^C # mongo -u root -p example MongoDB shell version v4.0.5 connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb Implicit session: session { "id" : UUID("84cc9dc9-4682-40ea-b3bb-f8a4ce58e415") } MongoDB server version: 4.0.5 Server has startup warnings: 2019-02-01T15:32:02.149+0000 I STORAGE [initandlisten] 2019-02-01T15:32:02.149+0000 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine 2019-02-01T15:32:02.149+0000 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem --- Enable MongoDB's free cloud-based monitoring service, which will then receive and display metrics about your deployment (disk utilization, CPU, operation statistics, etc). The monitoring data will be available on a MongoDB website with a unique URL accessible to you and anyone you share the URL with. MongoDB may use this information to make product improvements and to suggest MongoDB products and deployment options to you. To enable free monitoring, run the following command: db.enableFreeMonitoring() To permanently disable this reminder, run the following command: db.disableFreeMonitoring() --- > > GOT IT 2019-02-01T15:45:32.432+0000 E QUERY [js] SyntaxError: missing ; before statement @(shell):1:4 > > > use valDB switched to db valDB > db.addUser("valuser", "password") 2019-02-01T15:46:47.221+0000 E QUERY [js] TypeError: db.addUser is not a function : @(shell):1:1 > db.createUser({user: "kristjan", pwd: "password"}) 2019-02-01T15:49:31.025+0000 E QUERY [js] Error: couldn't add user: "createUser" command requires a "roles" array : _getErrorWithCode@src/mongo/shell/utils.js:25:13 DB.prototype.createUser@src/mongo/shell/db.js:1491:15 @(shell):1:1 >db.createUser({user: kristjan, pwd: password, roles: [readWrite]}) 2019-02-01T15:51:51.052+0000 E QUERY [js] ReferenceError: kristjan is not defined : @(shell):1:16 > db.createUser({user: kristjan, pwd: password, roles: [readWrite]}) 2019-02-01T15:51:58.492+0000 E QUERY [js] ReferenceError: kristjan is not defined : @(shell):1:16 > db.createUser({user: kristjan, pwd: password, roles: [readWrite]}) 2019-02-01T15:52:08.259+0000 E QUERY [js] ReferenceError: kristjan is not defined : @(shell):1:16 > db.createUser({user: kristjan, pwd: password, roles: [readWrite]}) 2019-02-01T15:52:09.212+0000 E QUERY [js] ReferenceError: kristjan is not defined : @(shell):1:16 > $ db.createUser({user: kristjan, pwd: password, roles: [readWrite]}) 2019-02-01T15:52:11.599+0000 E QUERY [js] SyntaxError: missing ; before statement @(shell):1:2 > db.createUser({user: kristjan, pwd: password, roles: [readWrite]}) 2019-02-01T15:52:23.784+0000 E QUERY [js] ReferenceError: kristjan is not defined : @(shell):1:16 > db.createUser({user: "kristjan", pwd: "password", rolse: ["readWrite"]}) 2019-02-01T15:52:53.218+0000 E QUERY [js] Error: couldn't add user: "rolse" is not a valid argument to createUser : _getErrorWithCode@src/mongo/shell/utils.js:25:13 DB.prototype.createUser@src/mongo/shell/db.js:1491:15 @(shell):1:1 > db.createUser({user: "kristjan", pwd: "password", rolse: ["readWrite"]}) 2019-02-01T15:53:27.144+0000 E QUERY [js] Error: couldn't add user: "rolse" is not a valid argument to createUser : _getErrorWithCode@src/mongo/shell/utils.js:25:13 DB.prototype.createUser@src/mongo/shell/db.js:1491:15 @(shell):1:1 > > > db.createUser({user: "kristjan", pwd: "password", roles: ["readWrite"]}) Successfully added user: { "user" : "kristjan", "roles" : [ "readWrite" ] } > > > show dbs admin 0.000GB config 0.000GB local 0.000GB > use testDB switched to db testDB > db.createUser({user: "kristjan", pwd: "password", rolse: ["readWrite"]}) 2019-02-01T15:55:35.453+0000 E QUERY [js] Error: couldn't add user: "rolse" is not a valid argument to createUser : _getErrorWithCode@src/mongo/shell/utils.js:25:13 DB.prototype.createUser@src/mongo/shell/db.js:1491:15 @(shell):1:1 > db.createUser({user: kristjan, pwd: password, roles: [readWrite]}) 2019-02-01T15:55:52.582+0000 E QUERY [js] ReferenceError: kristjan is not defined : @(shell):1:16 > > db.createUser({user: "kristjan", pwd: "password", roles: ["readWrite"]}) Successfully added user: { "user" : "kristjan", "roles" : [ "readWrite" ] } > > > show dbs admin 0.000GB config 0.000GB local 0.000GB > > > > > > db.testdata.insert({txt: "test"}) WriteResult({ "nInserted" : 1 }) > > > use test2 switched to db test2 > db.createUser({user: "test", pwd: "test", roles: ["readWrite"]}) Successfully added user: { "user" : "test", "roles" : [ "readWrite" ] } > db.txts.insert({txt: "written by test user"})WriteResult({ "nInserted" : 1 }) > > > exit bye # # # clera /bin/sh: 9: clera: not found # ls bin dev home lib64 opt run sys var boot docker-entrypoint-initdb.d js-yaml.js media proc sbin tmp data etc lib mnt root srv usr # # # clera /bin/sh: 13: clera: not found # ls bin dev home lib64 opt run sys var boot docker-entrypoint-initdb.d js-yaml.js media proc sbin tmp data etc lib mnt root srv usr # # # clear # # mongo MongoDB shell version v4.0.5 connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb Implicit session: session { "id" : UUID("409e49e5-61d2-454e-8e22-e721379386c9") } MongoDB server version: 4.0.5 > > > show dbs 2019-02-01T15:58:28.512+0000 E QUERY [js] Error: listDatabases failed:{ "ok" : 0, "errmsg" : "command listDatabases requires authentication", "code" : 13, "codeName" : "Unauthorized" } : _getErrorWithCode@src/mongo/shell/utils.js:25:13 Mongo.prototype.getDBs@src/mongo/shell/mongo.js:124:1 shellHelper.show@src/mongo/shell/utils.js:876:19 shellHelper@src/mongo/shell/utils.js:766:15 @(shellhelp2):1:1 >use texts switched to db texts > use derps switched to db derps > > > use testDB switched to db testDB > show collections Warning: unable to run listCollections, attempting to approximate collection names by parsing connectionStatus > db.show testDB.show > > db.list testDB.list > testDB.list.findAll() 2019-02-01T16:00:33.108+0000 E QUERY [js] ReferenceError: testDB is not defined : @(shell):1:1 > > > db.list.findAll() 2019-02-01T16:00:40.688+0000 E QUERY [js] TypeError: db.list.findAll is not a function : @(shell):1:1 > > > db.list.findOne() 2019-02-01T16:00:48.507+0000 E QUERY [js] Error: error: { "ok" : 0, "errmsg" : "command find requires authentication", "code" : 13, "codeName" : "Unauthorized" } : _getErrorWithCode@src/mongo/shell/utils.js:25:13 DBCommandCursor@src/mongo/shell/query.js:708:1 DBQuery.prototype._exec@src/mongo/shell/query.js:113:28 DBQuery.prototype.hasNext@src/mongo/shell/query.js:288:5 DBCollection.prototype.findOne@src/mongo/shell/collection.js:260:10 @(shell):1:1 >db.auth("kristjan", "password") 1 > > db.list.findAll() 2019-02-01T16:01:04.681+0000 E QUERY [js] TypeError: db.list.findAll is not a function : @(shell):1:1 > db.testdata.findAll() 2019-02-01T16:01:11.772+0000 E QUERY [js] TypeError: db.testdata.findAll is not a function : @(shell):1:1 > > > db.testdata.find_all() 2019-02-01T16:01:19.018+0000 E QUERY [js] TypeError: db.testdata.find_all is not a function : @(shell):1:1 > > > db.testdata.findOne function (query, fields, options, readConcern, collation) { var cursor = this.find(query, fields, -1 /* limit */, 0 /* skip*/, 0 /* batchSize */, options); if (readConcern) { cursor = cursor.readConcern(readConcern); } if (collation) { cursor = cursor.collation(collation); } if (!cursor.hasNext()) return null; var ret = cursor.next(); if (cursor.hasNext()) throw Error("findOne has more than 1 result!"); if (ret.$err) throw _getErrorWithCode(ret, "error " + tojson(ret)); return ret; } >db.testdata.find