added db files

This commit is contained in:
voje 2019-03-14 18:40:56 +01:00
parent 0750c64f48
commit 7351a0e8db
4 changed files with 352 additions and 0 deletions

View File

@ -0,0 +1,16 @@
#!/bin/bash
echo "exiting - check script"
exit
# obviously, change root and password!
# db names: nameDB
# collection names: lower case, plural
# user names?
# mongo admin -u root -p password --eval "db.getSiblingDB('vlDB').addUser('vluser', 'password')"
docker exec -it mongo-container /bin/bash
mongo -u root -p example
use valDB
db.createUser({user: "kristjan", pwd: "password", roles: ["readWrite"]})

View File

@ -0,0 +1,316 @@
>
> 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

View File

@ -0,0 +1,20 @@
# Use root/example as user/password credentials
version: '3.1'
services:
mongo:
image: mongo
restart: always
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: example
mongo-express:
image: mongo-express
restart: always
ports:
- 8081:8081
environment:
ME_CONFIG_MONGODB_ADMINUSERNAME: root
ME_CONFIG_MONGODB_ADMINPASSWORD: example